我想限制访问网站内的人的networking。 如果有人来自外部,他们将被redirect到另一个页面。
如何根据IP地址configuration这两种不同的操作?
既然你不想阻止来自外部networking的页面加载,但是想把它们发送到不同的页面,你将需要使用mod_rewrite。 假设你的本地networking是192.168.1.0/24:
RewriteEngine On RewriteCond %{REMOTE_ADDR} !^192\.168\.1 RewriteCond !^/foreigners/page RewriteRule .* /foreigners/page [R,L]
您实际上并不需要限制页面,因为重写规则将确保外国人永远不会看到该页面。
请注意,这并没有完全testing,但应该让你的path,你想要的。
这是最后的工作! 感谢大家的帮助让我接近。
RewriteEngine On RewriteCond %{REMOTE_ADDR} !^10\.5 RewriteCond %{REQUEST_URI} !^visitor\.php RewriteRule .* visitor.php
限制如下:
<Directory /var/www/your-root-folder/> Options Indexes FollowSymLinks Multiviews AllowOverride All Order Deny,Allow Deny from all # Allow only from LAN subnet Allow from 192.168.1.0/255.255.255.0 </Directory>
然后,如果你想为本地子网外的用户进行自动redirect,则需要修改“403 Forbidden”的默认处理。 我的例子redirect到“index.php”。
ErrorDocument 403 /index.php
尝试这个
命令否认,允许
否认所有
允许从192.168