Apache ProxyPassReverse 和 https

Jos*_*all 5 https reverse-proxy apache-2.2

我想将 80 和 443 上的所有流量从 foo.com 映射到内部服务器:192.168.1.101。我有一个 VirtualHost(Ubuntu 上的 Apache 2.2)设置如下(注意,我必须分解下面的超链接,因为我是一个“新用户”):

<VirtualHost *:80>
  ServerName foo.com
  ServerAlias *.foo.com
  ProxyRequests Off
  ProxyPreserveHost On

  <Proxy *>
    Order deny,allow
    Allow from all
  </Proxy>

  ProxyPass / http://192.168.1.101/
  ProxyPassReverse / http://192.168.1.101/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

这对 http 流量很有用。但是,我似乎无法为 https 做同样的事情。我试过了:

  • 将 VirtualHost *:80 更改为 * - 但这不起作用(我需要它 http->http 和 https->https)

  • 为 *:443 创建一个新的 VirtualHost 条目,该条目重定向到 http://192.168.1.101/,但同样失败(浏览器超时)

我在这里和其他地方做了一些搜索,我能找到的最接近的问题是this,但这并没有完全回答它。

另外,出于好奇,我尝试将所有端口映射到 https(通过将两个 ProxyPass 行从 http 更改为 https(并从 VH 中删除 :80),但这也不起作用。你会怎么做呢? ?

有什么想法吗?提前致谢。

rad*_*ius 6

这曾经对我有用

<VirtualHost *:443>                                                                                                                                                                        
 ServerName domaine.com
 SSLProxyEngine on                                                                                                                                                                          
 <Location />                                                                                                                                                                               
 ProxyPass https://www.something.com/                                                                                                                                                           
 ProxyPassReverse https://www.something.com/                                                                                                                                                    
 </Location>                                                                                                                                                                                
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)