apache2 HTTPS到HTTP反向代理

我正在设置我认为需要成为Apache 2中的反向代理的东西。

我有Apache设置,我有Mod_proxy,mod_ssl,Mod_rewrite所有启用。

我试图通过其HTTPS网页控制媒体播放器,它不允许http连接。 不幸的是,控制系统不会做Https。 它在技术上甚至不真的做http(它不是一个浏览器)。 尽pipe我可以形成HTTP数据包并parsing响应。 我经常与其他产品做这个。

所以我想要做的是发送一个HTTP请求到我的apache2服务器在192.168.0.17:80,让Apache服务器转发该请求到HTTPS媒体服务器在192.168.0.12:443。 然后将得到的源代码以纯文本forms返回给原始客户端进行parsing。 一旦信息被parsing,我将使用它来填充variables,然后使用这些variables来生成一个http数据包来模拟某个点击特定的GUI元素。

所有的机器都在专用于控制系统的本地networking上,虽然它具有互联网连接,但我不需要代理处理任何来自wan端的请求,实际上,我只需要代理来处理来自单个本地IP地址。

我知道我需要设置一个这样的虚拟主机文件

<VirtualHost 1.2.3.4:80> ServerName foo.com SSLProxyEngine On SSLProxyCheckPeerCN on SSLProxyCheckPeerExpire on ProxyPass / https://secure.bar.com ProxyPassReverse / https://secure.bar.com 

但只是不知道什么IP信息需要去哪里或什么其他设置,我可能需要改变。

作为一个侧面的问题,是否有脚本的Apache维护在https服务器上的login,并重新authentication,如果会话超时? 我可能会每隔几秒钟就对服务器进行轮询,以获得一些反馈元素,但如果可能的话,将login进程卸载到apache仍然不错

谢谢你的帮助。 我现在有4个小时的覆盆子pi和apache的经验。

你做错了。

`ServerName foo.com RewriteRule上的RewriteEngine ^ /(。*)$ https://secure.bar.com/ $ 1 [P,L]

加上<VirtualHost *>一般更简单和更性感(当然NameVirtualHost *必须存在)。

你很近

 <VirtualHost 1.2.3.4:80> ServerName foo.com SSLProxyEngine on ProxyPass / https://secure.bar.com/ ProxyPassReverse / https://secure.bar.com/ 

如果网站的主机硬编码,您可以使用我的大部分示例从这里 ,只要确保使用HTTPS和SSLProxyEngine On