我有一个情况,主要网站是用ColdFusion编写的遗留应用程序,我最近从MX 6.1迁移到9.0.1。 本网站的另一部分是在WordPress的PHP5的博客/论坛。 现在,我添加了一个付费会员function,并使用Ruby&Sinatra与Chargify V2 API集成。 好玩吗? 无论如何,现在我已经开始使用mod-proxy来将主CF站点上的某个子目录的请求发送到Sinatra应用程序。 这在HTTP上工作正常; 端口80到端口9292.但是当我尝试使用HTTPS会发生什么; 端口443到端口9292? 我目前没有这个主持人的证书,因为过去没有必要,所以我不知道如何去做实验。 我只是想确保浏览器不会抱怨非正统的安排。 我实际上并不担心表单提交是安全的,因为应用程序正在使用SSL进行encryption。 我想使用SSL的唯一原因是用户的信心。 因此,浏览器没有任何抱怨可能会降低用户的信心(因此也就是转换),这一点非常重要。
用户不知道连接在代理服务器和后端服务器之间是不encryption的; 他们的连接只是代理。 但是,我不能责怪你的用户不信任SSL之外的表单数据的encryption – 我也不会!
在任何情况下,除非您确定代理与后端之间的stream量安全,否则不应该以这种方式部署HTTPS代理到HTTP系统。 如果这个广播域可以被任何用户访问(而不仅仅是服务器),那么他们可以很容易的ARP中毒并捕获这个stream量。
如果发生这种情况的风险,则使用SSL进行代理和后端之间的通信 – 不需要花费大量精力来设置它。
为了得到一个testing用例,你可以设置一个自签名证书并启动一个SSL侦听器。
Listen 443 <VirtualHost *:443> ServerName ssl.example.com SSLEngine On SSLCertificateFile /path/to/cert.pem SSLCertificateKeyFile /path/to/cert.key ProxyPass / http://backend:9292/ ProxyPassReverse / http://backend:9292/ </VirtualHost>