我有一个在 apache 虚拟主机后面运行的 tomcat 服务器(所以我可以在同一台服务器上使用多个域)。apache 所做的只是获取主机名并将请求转发到适当的 tomcat 服务器,然后由该服务器处理之后的所有事情。
我希望在其中一个域上设置 SSL,并且我了解如何执行此操作的过程,但我对是否应该允许 tomcat 处理所有 SSL 或 apache 感到困惑。
有什么区别?允许tomcat处理ssl有什么缺点吗?如果我让 apache 处理 ssl,当我访问 tomcat 应用程序时,我还会得到绿条、挂锁等吗?我对整个情况有点困惑。
我使用代理来处理 apache2 转发到正确的 tomcat 应用程序。如果我像这样设置代理:
<VirtualHost 1.2.3.4:443>
ServerName host.domain.org
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
SSLEngine on
SSLProxyEngine On
SSLCertificateFile /etc/apache2/ssl/certificate.crt
SSLCertificateKeyFile /etc/apache2/ssl/certificate.key
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / https://localhost:8443/
ProxyPassReverse / https://localhost:8443/
</VirtualHost>
我需要使用 https 和 8443 端口吗?这样做是不是我也必须在tomcat上设置SSL?或者我可以在tomcat的server.xml的连接器中使用以下内容
secure = false
scheme = https
proxyName = www.mydomain.com
proxyPort = 443
并且不用担心将tomcat连接到ssl键?这是通过apache2使用SSL保护tomcat应用程序的正确方法吗?