mod_rewrite - 如何根据ip地址重写页面

时间:2015-11-18 20:08:00

标签: apache mod-rewrite directory server-side httpd.conf

我一直在询问与mod_rewrite相关的问题,所以首先很抱歉用相同的主题向你发送垃圾邮件。我现在面临的问题是我想根据用户的IP地址重定向我的网页。因此,当您访问“localhost / index”时,如果IP地址以10开头,它应该将您重定向到example.html,但如果不是,我想将用户重定向到readme.html页面。 readme.html,index.html和example.html位于同一目录(htdocs)中。

这是到目前为止的代码;

DocumentRoot "usr/local/apache2/htdocs"
<Directory "/htdocs">
Options FollowSymLinks
AllowOverride None
Order allow,deny
allow from all
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} ^10 
RewriteRule ^index.html$ readme.html [R,NC]
</Directory>

试着这样做;

// RewriteCond %{REMOTE_ADDR} ^!10 // RewriteRule ^ index.html $ example.html [R,NC]

但这不起作用

所以现在我只允许拥有以10开头的IP地址的用户访问该网站。

我查看了文档并找不到解决方法,这就是这篇文章的原因,请有人帮忙

谢谢

1 个答案:

答案 0 :(得分:0)

试一试。

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} ^10 
RewriteRule ^index.html$ example.html [R,NC]
RewriteRule ^index.html$ readme.html [R,NC]

详细了解rewriteRule R flag