如何从子目录中删除.htaccess密码保护

如何从子目录中删除.htaccess密码保护,.htaccess,password-protection,subdirectory,.htaccess,Password Protection,Subdirectory,我已使用.htaccess对整个网站进行了密码保护,但我想公开其中一个子目录,以便无需密码即可查看 如何禁用子目录的htaccess密码保护?具体来说,.htaccess语法是什么。 这是我的.htaccess文件,它位于我的ftp根目录中 AuthName "Site Administratrion" AuthUserFile /dir/.htpasswd AuthGroupFile /dev/null AuthName secure AuthType Basic require user

我已使用
.htaccess
对整个网站进行了密码保护,但我想公开其中一个子目录,以便无需密码即可查看

如何禁用子目录的htaccess密码保护?具体来说,
.htaccess
语法是什么。

这是我的
.htaccess
文件,它位于我的ftp根目录中

AuthName "Site Administratrion" AuthUserFile /dir/.htpasswd AuthGroupFile /dev/null AuthName secure AuthType Basic require user username1 order allow,deny allow from all AuthName“站点管理员” AuthUserFile/dir/.htpasswd AuthGroupFile/dev/null AuthName安全 AuthType Basic 需要用户用户名1 命令允许,拒绝 通融
您需要将另一个.htaccess文件添加到覆盖身份验证的子目录中。htaccess向上层叠,即它将在当前文件夹中查找,然后向上层叠,以此类推。

您需要在所需目录中创建一个新的
。htaccess
文件,并在其中包含
满足任何
指令,如是,对于Apache 2.3:

# allows any user to see this directory
Satisfy Any
Apache 2.4中更改的语法具有相同的效果:

Require all granted

除了RageZ的回答之外,我还在服务器指令中使用了以下内容:

<Directory /var/www/protected/>
     AuthType Basic
     AuthName "Production"
     AuthUserFile /path/to/.htpasswd
     Require valid-user
</Directory>

<Directory /var/www/protected/unprotected>
     Satisfy Any
</Directory>

AuthType Basic
AuthName“生产”
AuthUserFile/path/to/.htpasswd
需要有效用户
满足任何

太棒了。谢谢拉格兹

只需使用此指令在所需子目录中创建一个新的
.htaccess

允许来自所有人

您只能通过以下方式限制您的IP:

允许从x.x.x.x开始


请参阅:

如果您想阻止任何特定的方向进行htaccess身份验证,则可以在顶部的htaccess文件中使用以下代码

AuthType-Basic
AuthName“输入密码”
AuthUserFile/home/public_html/.htpasswd/*指向.htpasswd文件的路径*/
需要有效用户
setenif请求URI“(/DIRECTORY\u NAME/)$”允许
命令允许,拒绝
允许来自环境=允许

如果你想阻止多个目录,那么 加

setenif请求URI“(/DIRECTORY\u NAME/)$”允许


您希望从htaccess prevention中删除的目录数量与目录数量相同

下面是一种通过站点上主.htaccess文件的基本身份验证来允许子目录“foo”的方法:

AuthType Basic
AuthName "Password Required"
AuthUserFile /dir/.htpasswd
Require expr %{REQUEST_URI} =~ m#^/foo/#
Require valid-user

注意:这适用于Apache2.4。我还没有确认早期版本。

这可能更适合serverfault。您知道语法吗?我理解这个概念,但不知道如何实现它。如果您想删除当前的一个,并且不使用任何权限,只需将其替换为名为的空文件。htaccess@Garry这不是.htaccess级联的工作方式,您必须显式覆盖选项。我只能让它与
Allow from all
一起工作,而不是
满足Any
@jesselford充分利用代码片段@RageZ+1的答案对我来说很有用。你能不能把答案编辑得非常简单,然后用代码片段的方法发布。否则会有人认为
谢谢
@jesselford
满足任何
正在工作,它被拼写为
满足任何
。可能这就是它不适用于您的原因。我需要使单个文件不受保护(其他所有内容均受保护),在“这对我不起作用”部分中进行相同设置-我仍然获得密码模式,要求输入用户名和密码。。使用firefox和Windows7。。。有人有什么想法吗?当我把“允许所有人”改为“允许所有人”和“满足任何人”时,它就起作用了。那两个对我不起作用。我使用的是Apache2.4。