在这种情况下,我需要代理将一个域(domain1.com)传递到托管在共享ip地址(192.168.168.168)上的另一个域( domain2.com ),但是domain2.com DNS是指向共享ip地址以外的,因此domain2.com不能用作代理通行证,只能用作共享ip地址。
由于共享ip地址有多个主机名,是否有一个域或主机名配置选项可以与proxypass一起使用以强制在另一侧进行虚拟主机查找?例如,使用这个apache文件代理domain1.com到192.168.168.168。
#Apache Reverse Proxy
SSLProxyEngine on
<Location />
ProxyPass http://192.168.168.168/
ProxyPassReverse http://192.168.168.168/
</Location>是否有任何更改可以告诉您要在该ip上查找哪个域?
发布于 2021-11-09 09:13:19
共享IP地址(192.168.168.168)上的with服务器依赖具有已知主机/域名的主机头来显示正确的内容。
通过在ProxyPass指令中实际使用主机/域名,通常可以轻松地做到这一点:
<Location />
ProxyPass http://domain2.com/
ProxyPassReverse http://domain2.com/
</Location>由于您声明domain2.com的实际DNS条目是不正确的,所以可以通过在web服务器主机文件中添加带有192.168.168.168 IP地址的domain2.com来覆盖该条目。
# /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# added for Apache reverse proxy
192.168.168.168 domain2.com另一种方法是显式配置Apache,使用RequestHeader指令设置正确的主机头,大致如下:
<Location />
RequestHeader set Host "domain2.com"
ProxyPass http://192.168.168.168/
ProxyPassReverse http://domain2.com/
</Location>https://serverfault.com/questions/1082975
复制相似问题