У меня есть сервер Apache с несколькими сайтами.
Я хотел бы запустить на этом сервере док-контейнер с помощью Mercure и поделиться им в Интернете.
Я нашел информацию в Интернете, что мне нужно использовать ProxyPass и ProxyPassReverse в конфигурации vhost.
Моя конфигурация виртуального хоста:
<VirtualHost *:80>
ServerName tomaszf.pl
ServerAlias www.tomaszf.pl
DocumentRoot /var/www/html/mercurytest/public
DirectoryIndex /index.php
<Directory /var/www/html/mercurytest/public>
AllowOverride None
Order Allow,Deny
Allow from All
FallbackResource /index.php
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
</FilesMatch>
<Directory /var/www/html/mercurytest/public/bundles>
DirectoryIndex disabled
FallbackResource disabled
</Directory>
ErrorLog ${APACHE_LOG_DIR}/tomaszf.pl.error.log
CustomLog ${APACHE_LOG_DIR}/tomaszf.pl.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.tomaszf.pl [OR]
RewriteCond %{SERVER_NAME} =tomaszf.pl
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:443>
ServerName tomaszf.pl
ServerAlias www.tomaszf.pl
DocumentRoot /var/www/html/mercurytest/public
DirectoryIndex /index.php
<Directory /var/www/html/mercurytest/public>
AllowOverride None
Order Allow,Deny
Allow from All
FallbackResource /index.php
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
</FilesMatch>
<Directory /var/www/html/mercurytest/public/bundles>
DirectoryIndex disabled
FallbackResource disabled
</Directory>
ErrorLog ${APACHE_LOG_DIR}/tomaszf.pl.error.log
CustomLog ${APACHE_LOG_DIR}/tomaszf.pl.log combined
SSLCertificateFile /etc/letsencrypt/live/tomaszf.pl/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/tomaszf.pl/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
ProxyPass /mercure http://127.0.0.1:8099/
ProxyPassReverse /mercure http://127.0.0.1:8099/
</VirtualHost>
Докер-контейнер запускается командой:
докер запустить \
-e ИМЯ_СЕРВЕРА=':80' \
-e MERCURE_PUBLISHER_JWT_KEY='!ChangeMe!' \
-e MERCURE_SUBSCRIBER_JWT_KEY='!ChangeMe!' \
-p 8099:80 \
-e CORS_ALLOWED_ORIGINS='https://tomaszf.pl' \
-e ОТЛАДКА=1 \
-e РАЗРЕШЕНО_АНОНИМНО=1 \
Dunglas/Mercure Caddy Run -config /etc/caddy/Caddyfile.dev
Проблема:
При попытке зайти на сайт tomaszf.pl/mercure адрес в браузере автоматически меняется на 127.0.0.1 и сайт не работает.
Что мне нужно изменить в конфигурации?