2009-02-27 78 views
14

我想限制整个网站的方式只有两个IP可以进入网站。我在我的.htaccess以下(在站点的根目录):使用htaccess的IP限制

ErrorDocument 403 http://www.example.com/views/error403.html 

Order Deny,Allow 
Deny from all 
Allow from 311.311.311 322.322.322.322 

ErrorDocument 404 /views/error404.html 
ErrorDocument 500 views/error500.html 

(显然,这些都是假的IP地址,在我的.htaccess他们是正确的IP地址)

正如你所看到的,我只允许322.322.322.322和所有来自311.311.311.0/24的IP,并且拒绝其他人。我想要的是,当有人从另一个IP进入网站时,他会查看error403.html页面。

该过滤器工作正常,但不是重定向。当我试图从否定IP进入现场,我看到一个Apache消息:

Found 
The document has moved here 

其中,“这里”是error403.html的链接。

我想我甚至会限制error403.html页面。

我该如何做这个限制,但允许查看错误页面?我是否应该将error403.html页面移动到另一个目录(即/ views/error /),并将其他.htaccess文件放入其中,允许在该文件中包含所有IP?

预先感谢您!

回答

10

是的,你已经回答了你自己的问题。 :)将所有未受保护的页面移动到另一个目录中,并使用其自己的.htaccess包含正确的AllowDeny

+0

我想知道是否会存在另一个更高级的形式来解决这个问题,但你已经证实我的怀疑;我会用另一个目录htaccess对来完成。 谢谢你弗拉德! – ARemesal 2009-02-27 08:35:13