在 Ubuntu 16 上使用 Apache 2.4 反向代理 Tomcat 7:找不到 webapp
Using Apache 2.4 on Ubuntu 16 to reverse proxy Tomcat 7: webapp not found
我正在按照 this page 上的说明使用 Apache,使用 SSL,在 Tomcat 7 实例前面,即 不 使用 SSL ,并且部署了一个 webapp。
我已按照所有说明进行操作并能够导航至:
http://localhost
https://localhost
http://localhost/my-webapp
唯一不工作的是
https://localhost/my-webapp
它 returns 404 未找到错误。
我已经在下面发布了我的 conf 文件的相关部分。
阿帕奇 000-default.conf
<VirtualHost *:80>
...
ProxyPass /my-webapp ajp://localhost:8009/my-webapp
ProxyPassReverse /my-webapp ajp://localhost:8009/my-webapp
</VirtualHost>
Apache 默认-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" />
我启用了所有模组,而且 ssl 和代理似乎都在工作。
当我导航到
http://localhost/my-webapp
没有 https,代理工作正常。当我导航到
https://localhost
它也有效;它 returns 静态 Apache 页面。 (它抱怨自签名证书不安全,但除此之外,它可以工作...)
不应该
https://localhost/my-webapp
也工作?我错过了什么?
你需要在里面定义代理virtualhots_443
ProxyPass /my-webapp ajp://localhost:8009/my-webapp
ProxyPassReverse /my-webapp ajp://localhost:8009/my-webapp
我正在按照 this page 上的说明使用 Apache,使用 SSL,在 Tomcat 7 实例前面,即 不 使用 SSL ,并且部署了一个 webapp。
我已按照所有说明进行操作并能够导航至:
http://localhost
https://localhost
http://localhost/my-webapp
唯一不工作的是
https://localhost/my-webapp
它 returns 404 未找到错误。
我已经在下面发布了我的 conf 文件的相关部分。
阿帕奇 000-default.conf
<VirtualHost *:80>
...
ProxyPass /my-webapp ajp://localhost:8009/my-webapp
ProxyPassReverse /my-webapp ajp://localhost:8009/my-webapp
</VirtualHost>
Apache 默认-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" />
我启用了所有模组,而且 ssl 和代理似乎都在工作。 当我导航到
http://localhost/my-webapp
没有 https,代理工作正常。当我导航到
https://localhost
它也有效;它 returns 静态 Apache 页面。 (它抱怨自签名证书不安全,但除此之外,它可以工作...)
不应该
https://localhost/my-webapp
也工作?我错过了什么?
你需要在里面定义代理virtualhots_443
ProxyPass /my-webapp ajp://localhost:8009/my-webapp
ProxyPassReverse /my-webapp ajp://localhost:8009/my-webapp