Как настроить httpd на CentOS 7 для работы в качестве прокси для приложения (контейнера Docker), работающего на порту 8080. Я думал, как заставить это работать, мое приложение было подготовлено как контейнер докера (никогда не слышал об этом раньше;)), поэтому сначала я должен был узнать, что такое "докер" и как он работает (потому что приложение работает в контейнере это не позволило бы мне использовать https). Итак, что я сделал для этого:- Подготовил VPS с httpd/apache, затем создал VS - Установил SSL-сертификаты на httpd. - Установлен Docker - Вытащил образ моего приложения ... затем, чтобы заставить HTTPS работать, мне пришлось перенастроить мой VirtualServer, как показано ниже
мой VS config (обновленный прокси)
# HTTP
<VirtualHost *:80>
ServerName myserver.domain.co.uk
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) ht tps://%{SERVER_NAME}/$1 [R,L]
LogLevel warn
ErrorLog myserver.domain.co.uk-error_log
CustomLog myserver.domain.co.uk-access_log combined
</VirtualHost>
# HTTPS
<VirtualHost *:443>
ServerName myserver.domain.co.uk
LogLevel warn
ErrorLog myserver.domain.co.uk-error_log
CustomLog myserver.domain.co.uk-access_log combined
SSLEngine on
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocol All -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
Header set X-Content-Type-Options "nosniff"
# Reverse proxy configuration
<Proxy *>
Allow from localhost
</Proxy>
ProxyPass / http://127.0.0.1:8080
ProxyPassReverse / http://127.0.0.1:8080
</VirtualHost>
... и теперь это работает!