我有一个域名,例如
http://example.com
和另一个域名
http://reallylargerdomain name.com
我想如果sombody access http://example.com/projects那么服务器应该代理来自其他网址的数据。 为此,我创建了以下.htaccess文件
Rewrite on
RewriteRule ^projects/$ http://reallylargedomainname.com [P]
这不起作用,但当我将其更改为跟随它工作
Rewrite on
RewriteRule ^projects/$ http://reallylargedomainname.com [R=301,L]
知道出了什么问题?
答案 0 :(得分:3)
您需要确保在apache配置中加载了mod_proxy。没有它,P
标志会发送代理请求,但没有任何东西可以处理目标。它看起来像这样:
LoadModule proxy_module modules/mod_proxy.so
如果目录不同,目录显然会被调整到你的路径。
此外,请注意,如果规则中没有L
标志,则在重写引擎完成之前,代理请求不会被发送回处理管道。因此,如果您在代理规则之后有其他规则,则会在代理发生之前应用它们。