通过在vhost中配置的代理,AJAX直接向代理站点的请求失败

时间:2019-04-30 15:28:24

标签: apache mod-rewrite virtualhost vhosts proxypass

我正在尝试将本地apache配置为在我的计算机上运行的vagrant上运行的网站的代理,以便我的计算机的IP可以被另一台设备访问以为该vagrant站点提供服务。

我已经配置了以下虚拟主机条目:

<VirtualHost *:443>
  SSLProxyEngine on
  SSLProxyVerify none
  SSLProxyCheckPeerCN off
  SSLProxyCheckPeerName off
  SSLProxyCheckPeerExpire off
  ProxyPass / https://site.web.test/
  ProxyPassReverse / https://site.web.test/
  ProxyPassReverseCookieDomain .site.web.test 192.168.4.209
  RequestHeader set Host site.web.test
  ProxyPreserveHost On

  SSLEngine on
  SSLCertificateFile "/.ssh/server.crt"
  SSLCertificateKeyFile "/.ssh/server.key"
</VirtualHost>

这在大多数情况下都有效,我可以访问该网站,并且该页面可以正确加载。但是,直接向“ site.web.test”发出了AJAX请求(它使用数据库中的设置,我试图避免更改,因为我并不总是使用此虚拟主机)。然后,这些请求将无法正常运行,因为其他设备不知道该域,即使在我所知道的计算机上,这些请求也会由于CORS错误而失败。

是否有一种方法可以让vhost配置重写所有这些请求,使它们看起来都将进入我的IP?

我尝试了其他答案/文章中的许多建议来配置一些重写规则,但是它们似乎都与我的情况有所不同,并且似乎没有任何作用。

0 个答案:

没有答案