Apache 如何禁止站点范围的访问,但只允许公众通过htaccess访问某些URL

Apache 如何禁止站点范围的访问,但只允许公众通过htaccess访问某些URL,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,通过htaccess,我想: 1-禁止所有人访问网站 2-仅允许3个ip通过ip禁令 3-让公众完全可以访问1个目录 我理解第三条规则与第一条规则相抵触,这就是我感到困惑的地方 目前我有以下代码: <Files 403.shtml> order deny,allow deny from all </Files> allow from xxx.xxx.xxx.xx #Fred allow from xxx.xxx.xxx.xxx #Ben 命令拒绝,允许

通过htaccess,我想:

1-禁止所有人访问网站

2-仅允许3个ip通过ip禁令

3-让公众完全可以访问1个目录

我理解第三条规则与第一条规则相抵触,这就是我感到困惑的地方

目前我有以下代码:

<Files 403.shtml> 
order deny,allow 
deny from all 
</Files> 
allow from xxx.xxx.xxx.xx #Fred 
allow from xxx.xxx.xxx.xxx #Ben  

命令拒绝,允许
全盘否定
允许来自xxx.xxx.xxx.xx#Fred
允许从xxx.xxx.xxx.xxx开始
上面的代码可以很好地工作,除了我的3个同事之外,不允许任何人进来

<Directory /printing/>
 Order Allow, Deny 
 Allow from All
</Directory>

命令允许,拒绝
通融
上面的代码(添加时)给我一个500内部服务器错误

如何混合使用这两种代码,以便人们在阻止访问网站的任何其他部分时仍然可以公开访问我的目录?

您不能在htaccess文件中添加
容器,因为htaccess已经是每个目录

您需要做的是在
printing
目录中创建一个htaccess文件,只需:

Order Allow, Deny 
Allow from All

非常感谢你,我没有想到那一个!