.htaccess使用[P]代理标志重写

.htaccess使用[P]代理标志重写,.htaccess,mod-rewrite,url-rewriting,apache2,.htaccess,Mod Rewrite,Url Rewriting,Apache2,我正在尝试通过.htaccess和代理标志进行不可见(透明?)重写。它使用[R]标志,但不使用[P]标志,因为它只给出500个错误。这两个域位于不同的服务器上,并且启用了mod_代理模块。我的.htaccess正确吗 Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} =one.com RewriteRule ^(.*)$ http://two.com/$1 [P]

我正在尝试通过.htaccess和代理标志进行不可见(透明?)重写。它使用[R]标志,但不使用[P]标志,因为它只给出500个错误。这两个域位于不同的服务器上,并且启用了mod_代理模块。我的.htaccess正确吗

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST}    =one.com
RewriteRule ^(.*)$          http://two.com/$1 [P]

如果
mod_proxy
被编译为共享模块,则需要显式加载相关子模块。您的服务器上可能未启用http
mod\u proxy\u,这会在
mod\u proxy
尝试处理通过
mod\u rewrite
传递给它的请求时导致内部服务器错误


mod_proxy
本身是启用的,并且可能会像您所说的那样工作,因为如果您没有启用它,使用
p
标志只会生成404响应。如果没有错误日志,很难确定,因此您可能需要找到有权访问该日志的人来查看发生了什么,以帮助您解决问题。

您可以检查服务器上的错误日志,查看您正在接收的500错误的具体错误是什么吗?这是我得到的错误:.IP..***-[14/Sep/2010:19:33:11+0200]“GET/149c9fad24f457143dcb HTTP/1.1”500 433“-”Mozilla/5.0(Macintosh;U;Intel Mac OS X 10_6_4;fr fr fr)AppleWebKit/533.18.1(KHTML,类似Gecko)版本/5.0.2 Safari/533.18.5“这是从访问日志中得到的,应该有一个单独的错误日志来解释Apache生成500响应的原因。不,对不起,我没有访问任何其他日志的权限…感谢关于404的注释--我不明白为什么我会得到它!