基于 Apache referrer 的反向代理路径重写

基于 Apache referrer 的反向代理路径重写

我有一个虚拟主机,它是基于路径参数的反向代理“

<VirtualHost *:443>
ServerAlias some.example
SSL...
   ProxyPass /xmg http://localhost:5553/
   ProxyPassReverse /xmg http://localhost:5553/
<VirtualHost>

该应用程序不是我可以更改的,反向代理可以工作,基本 html 可以加载,但客户端html 不“知道”路径参数(),因此在没有“/xmg/”的情况下寻求其他资产(js,...),我如何使用引荐来源,在本例中为“https://some.example/xmg”将请求“/bla.js”重写为localhost:5553/或proxypass?

答案1

这似乎起了作用,此链接将路径视为不同的站点,我无法控制的外部应用程序被放置在它自己的虚拟主机中,该虚拟主机被更改了额外的别名

Listen 4443
<VirtualHost *:4443>
   ServerAlias xxxx
   DocumentRoot /some/path
   Alias /xmg /some/path
   <Directory...>
   <Directory>
<VirtualHost>

并且进行了反向代理设置以匹配别名:

<VirtualHost *:443>
     ... other settings 
    ProxyPass /xmg http://localhost:4443/xmg
    ProxyPassReverse /xmg http://localhost:4443/xmg
<VirtualHost>

相关内容