4

例如,我有一个域

http://example.com 

和另一个域

http://reallylargerdomain name.com

我想如果 sombody 访问http://example.com/projects那么服务器应该代理来自其他 url 的数据。为此,我创建了以下 .htaccess 文件

Rewrite on
RewriteRule ^projects/$ http://reallylargedomainname.com [P]

这不起作用,但是当我将其更改为遵循它时

Rewrite on
RewriteRule ^projects/$ http://reallylargedomainname.com [R=301,L]

知道出了什么问题吗?

4

1 回答 1

3

您需要确保 mod_proxy 已加载到您的 apache 配置中。没有它,P标志会发送代理请求,但没有任何东西可以处理目标。它看起来像这样:

LoadModule  proxy_module modules/mod_proxy.so

如果目录不同,显然会根据您的路径进行调整。

此外,请注意,如果L您的规则中没有该标志,则在重写引擎完成之前,代理请求不会被发送回处理管道。因此,如果您在代理规则之后还有其他规则,它们将在代理发生之前应用。

于 2012-08-24T06:19:54.107 回答