Apache mit Proxy und SSL lauscht nicht auf Port 80

Apache mit Proxy und SSL lauscht nicht auf Port 80

Ich verwende Apache 2.4.29 unter Ubuntu 18.04 und habe das folgende Setup in 000-default.conf

 <VirtualHost *:80>
  ServerName example.com
  Redirect permanent / https://example.com/
</VirtualHost>

<VirtualHost *:443>

    ServerName example.com
    DocumentRoot /var/www/html

    LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error_ssl.log
    CustomLog ${APACHE_LOG_DIR}/access_ssl.log combined

    SSLEngine on
    SSLProxyEngine On

    SSLCertificateKeyFile /pathtokey/privkey.pem
    SSLCertificateChainFile /pathtokey/chain.pem
    SSLCertificateFile /pathtokey/fullchain.pem

    ProxyRequests Off
    ProxyPreserveHost On
    ProxyPass / https://localhost:8443/
    ProxyPassReverse / https://localhost:8443/


    #ErrorLog ${APACHE_LOG_DIR}/error.log
    #CustomLog ${APACHE_LOG_DIR}/access.log combined


</VirtualHost>

Apache arbeitet als Proxy für einen Tomcat-Server, beide mit SSL. Wenn ich die URL mit https verwende, funktioniert Apache gut, aber wenn ich versuche, http zu verwenden, werde ich nicht zu https umgeleitet. Ich habe es überprüft und es scheint, dass Apache nicht zuhört oder Verbindungen von Port 80 verarbeitet (ich habe es auch mit Telnet überprüft).

Wenn ich die SSL-Einstellungen entferne und einen virtuellen Host in Port 80 behalte, kann ich ohne SSL arbeiten. Das funktioniert in Port 80 einwandfrei. Wenn ich jedoch nur SSL aktiviere, kann ich den Server mit https verwenden.

Gibt es eine Möglichkeit, http zu verwenden und zu https weitergeleitet zu werden?

Antwort1

Ich habe das Problem gefunden: Ich hatte ein Routing in IPTABLES, das den Verkehr von Port 80 an 8080 schickte

verwandte Informationen