#docker #apache2 #ubuntu-18.04
#docker #apache2 #ubuntu-18.04
Вопрос:
Я пытаюсь перенести свои приложения на docker, но с Apache у меня возникают некоторые проблемы. Я добавляю свой site.conf в apache (это работает нормально):
<VirtualHost *:80>
ServerName example.com.
ServerAlias api.example.com
Redirect permanent / https://www.example.com/
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
RewriteEngine on
RewriteOptions inherit
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
ServerAlias www.example.com
SSLEngine on
SSLCertificateFile /etc/apache2/external/certificate.crt
SSLCertificateKeyFile /etc/apache2/external/private.key
SSLCACertificateFile /etc/apache2/external/ca_bundle.crt
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
ProxyPass / http://example:8090/
ProxyPassReverse / http://example:8090/
RewriteEngine on
RewriteOptions inherit
</VirtualHost>
Но когда я пытаюсь добавить новый виртуальный хостинг с поддоменом, контейнер не запускается:
<VirtualHost *:80>
ServerName sub1.example.com
ServerAlias sub1.example.com
ProxyPreserveHost On
ProxyPass / http://myapp2:8090/
ProxyPassReverse / http://myapp2:8090/
</VirtualHost>
<VirtualHost *:80>
ServerName sub2.example.com
ServerAlias sub2.example.com
ProxyPreserveHost On
ProxyPass / http://myapp2:8090/
ProxyPassReverse / http://myapp2:8090/
</VirtualHost>
Я копирую файлы журнала из контейнера на свой хост-компьютер, но файл errors.logs не показывает какой-либо существенной ошибки относительно того, почему он не загружается. Команда docker logs container-name также не очень помогает.
Есть идеи о возможной ошибке?
Ответ №1:
Я, наконец, нашел решение. Я создал новую конфигурацию (new_site.conf) и добавил свою конфигурацию virtualhost. Затем я включил его (a2ensite new_site.conf), я перезапустил службу, и все по-прежнему работало. Я попытался получить доступ через URL, и он перенаправил меня к моему приложению.