Ich verwende die Anweisungen auf this page, Apache zu verwenden, mit SSL, vor einer Tomcat 7-Instanz, das ist nicht mit SSL, und hat eine Webapp bereitgestellt.Verwenden von Apache 2.4 auf Ubuntu 16 zum Reverse-Proxy Tomcat 7: webapp nicht gefunden
Ich habe alle Anweisungen befolgt und bin in der Lage zu navigieren:
http://localhost
https://localhost
http://localhost/my-webapp
Das einzige, was nicht Arbeits ist
https://localhost/my-webapp
Es gibt einen 404 nicht gefunden Fehler.
Ich habe unten die relevanten Teile meiner Conf-Dateien veröffentlicht.
Apache 000-default.conf
<VirtualHost *:80>
...
ProxyPass /my-webapp ajp://localhost:8009/my-webapp
ProxyPassReverse /my-webapp ajp://localhost:8009/my-webapp
</VirtualHost>
Apache default-ssl.conf
<VirtualHost _default_:443>
...
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt
</VirtualHost>
Tomcat server.xml
...
<Server port="8005" shutdown="SHUTDOWN">
...
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
Ich habe alle Mods aktiviert, und beide ssl und proxy scheinen zu arbeiten. Als ich nach
http://localhost/my-webapp
ohne https navigieren, arbeitet der Proxy in Ordnung. Und wenn ich zu
https://localhost
navigieren, funktioniert es auch; Es gibt die statische Apache-Seite zurück. (Es beschwert sich über die selbstsignierten Zertifikaten nicht sicher zu sein, aber ansonsten, es funktioniert ...)
Sollte nicht
https://localhost/my-webapp
auch arbeiten? Was vermisse ich?
Vielen Dank definieren! Ich hatte Apache 2 auf CentOS verwendet und auf diesem Betriebssystem hatte ich nur eine Conf-Datei, ssl.conf. Unter Ubuntu gibt es 2 conf-Dateien, eine für den "normalen" Modus, Port 80 (000-default.conf) und eine für ssl (default-ssl.conf). Ich habe nicht einmal bemerkt, dass oben auf der Datei klar steht, welchen Port du konfigurierst, ich dachte nur, dass alles in 000-default.conf überall angewendet würde, während das Zeug in default-ssl.conf wäre nur auf https angewendet. Wie Sie sehen können, habe ich nicht viel Erfahrung mit der Konfiguration von Apache-Servern ... Wie auch immer, nochmals vielen Dank! –