mod_Rewrite:按IP过滤特定页面并重定向它们

时间:2009-09-08 02:34:13

标签: mod-rewrite filtering ip

我正在研究一种通过IP过滤特定页面的方法,并将它们重定向到另一个页面。

以下代码无效。

RewriteCond %{REMOTE_ADDR} ^/192.168.10.*
RewriteCond %{REQUEST_URI} ^/support
RewriteRule ^/.* http://www.yahoo.com/gone [R,NE]

一旦访问了链接http://example.com/support并且它们位于192.168.10。*块上,它就必须转到yahoo.com示例页面。

但是,就像我说的那样。它什么也没做。任何想法为什么它不能正常工作?

1 个答案:

答案 0 :(得分:4)

正如yoda在评论中所说,不要在IP地址前加/。此外,模式中的.应为\.,因为这是perl兼容的正则表达式。您还可以在请求uri匹配中添加[NC],无案例(敏感)。最后,您可以将第二个条件与RewriteRule合并。所有在一起:

RewriteCond %{REMOTE_ADDR} ^192\.168\.10\..*
RewriteRule ^/support http://www.yahoo.com/gone [R,NE,NC]