![](/img/trans.png)
[英]Connection between Apache Httpd and Eclipse Tomcat (Windows 7)
[英]Is this a false SSL connection between Apache + Tomcat?
我正在查看本指南,使用SSL设置tomcat + apache: http : //www.mulesoft.com/tcat/tomcat-ssl
在“何时使用SSL与Tomcat”一节下,它说:
“...换句话说,如果您使用Web服务器将Tomcat作为应用程序服务器或Tomcat servlet容器使用它,那么在大多数情况下,您应该让Web服务器充当所有SSL请求的代理”
由于我已经使用SSL设置了网络服务器,因此我决定保持懒惰。 我用默认设置安装了tomcat,并启动了它。 在我的httpd.conf中,我将所有80个流量重定向到443,然后将proxypass和proxypassreverse重定向到ajp://hostname.com:8009。 我重新启动了httpd,它“似乎”通过ssl重定向到tomcat服务器。 这完全被打破了还是我真的设法做了我想要的第一次去? 任何测试建议都非常感谢。
<VirtualHost *:80>
ServerName hostname_DNS_alias.com
Redirect / https://hostname_DNS_alias.com
</VirtualHost>
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/pki/tls/certs/thecrt.crt
SSLCertificateKeyFile /etc/pki/tls/private/thekey.key
SSLCertificateChainFile /etc/pki/tls/certs/CA.crt
ServerName hostname_DNS_alias.com
DocumentRoot /var/www/html
<Proxy *>
AddDefaultCharset off
Order deny,allow
Allow from all
</Proxy>
ProxyPass / ajp://hostname.com:8009/
ProxyPassReverse / ajp://hostname.com:8009/
</VirtualHost>
我想你已经知道了,但你可以查看HTTPD和Tomcat上的访问日志来确认请求被代理。 您应该在两个系统上都看到访问日志条目。
几个快速笔记......
如注释中所述,您可以从Tomcat中删除HTTP连接器。 但这不是必须的。 有时为了测试目的而保持开放是很好的(即你可以直接点击服务器)或者如果你想在其上运行管理器应用程序。 如果您确实保留它,特别是如果您使用它来运行Manager应用程序,您应该限制对它的访问。 两种简单的方法是将HTTP连接器上的address
属性设置为localhost
或者配置RemoteAddressFilter 。
请记住,从HTTPD服务器到Tomcat的AJP连接未加密(SSL在HTTPD处终止),因此您要确保流量永远不会通过不安全的网络(如Internet)。
由于您已经在混合中使用了HTTPD,因此您也可以使用它来提供静态文件。 如果将它们部署到文档根目录,则可以添加“ProxyPass!”。 指令将该路径排除在代理之外的Tomcat。 这将在请求上提供稍微减少的延迟,因为HTTPD确实需要从Tomcat获取静态文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.