【问题标题】:Redirecting without showing the new URL á la [PT]重定向而不显示新 URL á la [PT]
【发布时间】:2011-07-17 08:38:47
【问题描述】:

我有一个在 Linux 上运行的 Apache 服务器。在同一台主机上,我使用 Windows Server 2008 + IIS 运行 Xen。 Windows 获得不同的 IP 地址。

主机位于 NAT 后面,我已将其配置为将端口 80 定向到 Linux,将 8080 定向到 Windows。

Apache 提供了一个虚拟主机来处理传入的请求,但这些请求只需要重定向到 IIS,因此我的重写规则可以表示如下:

<VirtualHost ...>
ServerName www.firstdomain.com
...
RewriteEngine On
RewriteOptions Inherit
RewriteRule ^/(.*) http://www.seconddomain.com:8080/$1 [R,L]

这很好用,因为对 www.seconddomain.com 的请求进入 Apache VH,它将 URL 重写为 www.secondomain.com:8080,因此浏览器现在登陆 IIS。

我的问题:我不希望用户看到 URL 已更改;我希望它的行为方式与规则的直通选项的工作方式相同。

我怎样才能做到这一点?而且,如果重写规则是错误的方法,那么更好的方法是什么?

更新

我找到了规则的 [P]roxy 标志。这(几乎)效果很好。我可以将文件放在我的 IIS 的根目录中并通过http://www.seconddomain.com/tst.html 访问它 - 但是,文档中的引用不会正确重定向,例如&lt;img src='/images/tst.jpg' /&gt; 失败,显示应该有一个图像在它的位置......我还需要什么?

【问题讨论】:

标签: mod-rewrite apache2


【解决方案1】:

好的,一切正常。我只是装傻。 [P] 正是我所需要的。

【讨论】:

    猜你喜欢
    • 2012-11-18
    • 2017-07-05
    • 2016-09-08
    • 1970-01-01
    • 2014-01-14
    • 2015-05-01
    • 1970-01-01
    • 2010-12-14
    • 2013-05-31
    相关资源
    最近更新 更多