重定向到不同的主机而不更改 URL

问题描述

我有一个 vHost,其中的主网站在端口 8002 上称为 coffee.loc。 该网站应该位于 Intranet 网络内部,其中需要为 Intranet 外部的用户提供特定链接

一个特定地址“http://coffe.loc:8002/drink?&drinkid=12”(或任何其他drinkid 值)和另一个需要允许访问的类似地址。

我在端口 8888 上有另一个名为 redirect.loc 的虚拟主机。

在访问redirect.loc时,实际上指定了文档根路径为coffee.loc的根。所以通过访问redirect.loc,我们实际上是在访问coffe.loc 主页。在主页的功能中,根据 url 重定向到特定链接

所以,一旦我访问了redirect.loc,它就应该显示可用的页面http://coffe.loc:8002/drink?&drinkid=12 并且它正在这样做,但是 URL 不应该更改。通过浏览应该是redirect.loc:8888,如果第一个请求来自它。

我看到了关于这个话题的类似讨论,但似乎没有一个有效。一旦我能够在不更改 URL 的情况下进行重定向,但文件(css、js、图像等)的加载都是错误的,因为 Symfony 将根 url 读取为 http://coffe.loc:8002/drink?&drinkid=12,因此我不断收到错误 404。

我使用的是 Symfony 1.4 和 Apache2

编辑:

我能够在不更改 URL 的情况下进行重定向,但是文件(css、js、图像等)的加载都是错误的,因为并返回了错误 404。我使用的是代理,当我为 redirect.loc 设置代理时设置为coffee.loc:8002 效果很好,我看到的是coffee.loc 的起始页。但是,如果我尝试使用代理设置中的特定链接页面和所有请求都会以状态 404 结束。

这是代理的设置:

<Proxy>
  Order Deny,Allow
  Allow from all
  Allow from 203.0.113.67
</Proxy>
ProxyPass / http://coffe.loc:8002/drink?&drinkid=12
ProxyPassReverse / http://coffe.loc:8002/drink?&drinkid=12

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)