Как настроить 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>

... и теперь это работает!

0