我有以下重写语句:
RewriteCond %{HTTP_X_SOMEHEADER} ^mystring$
RewriteCond %{REMOTE_ADDR} ^111\.222\.111\.222$
RewriteRule (.*) /mypage.html [L]
我的阅读方式是:
IF HTTP_X_SOMEHEADER equals "mystring"
AND
REMOTE_ADDR equals 111.222.111.222
THEN
GOTO mypage.html
然而我看到的是,如果 IP 是 111.222.111.222 但 HTTP-X-SOMEHEADER 不存在,那么规则就会通过。
我希望仅当标头 HTTP-X-SOMEHEADER 存在并且 IP 正确时,规则才会通过。
有任何想法吗?
答案1
我认为你需要RewriteCond %{HTTP:HTTP_X_SOMEHEADER}
选择一个不在给定列表中的任意 HTTP 标头mod_rewrite 文档。
您的代码符合我期望的设置行为,因此还有更多事情发生。错误日志中有什么?