使用Apache

时间:2015-06-25 03:04:42

标签: apache .htaccess web

免责声明:我对Apache几乎一无所知,此处发布的所有信息仅在1晚内从Google搜索结果拼凑而成。

-

我似乎无法让.htaccess只阻止我的域名的子目录,有人可以帮助我吗?

我的根域:http://domain.com(/ home / username / domain /)

我想阻止的目录是/ home / username / domain / files /

在/ domain /目录中,我相应地修改了.htaccess文件:

# Password Protect Directories #
AuthName "You shall not pass!"
AuthType Basic
AuthUserFile /home/username/domain/files.htpasswd
require valid-user
# END Password Protect Directories #

问题是,这似乎是密码保护我的根目录以及指定的子目录。

-

我已经尝试将此.htaccess文件条目移动到/ domain / files /目录中的单独.htaccess文件中,但是这根本不起作用,没有任何密码保护。

我不太清楚我应该在这里做什么,我已经在线阅读了几十个教程,但似乎没有任何帮助我,除了密码保护我的整个根目录。

-

有人可以向我解释我如何才能阻止多个子目录吗?

/domain/files/
/domain/software/
/domain/pictures/

等...

谢谢!

-

或者,如果有人知道更好的方法来实现这一点,请随时告诉我。

1 个答案:

答案 0 :(得分:0)

验证确实没有任何内容。您需要将.htaccess文件中的代码放在要保护的子目录中。另外,我不会将我的密码文件放在可公开访问的位置。将它放在根目录之外,就像在主文件夹中一样。所以这段代码应该放在你的文件夹中。

# Password Protect Directories #
AuthName "You shall not pass!"
AuthType Basic
AuthUserFile /home/username/.htpasswd
require valid-user
# END Password Protect Directories #

确保apache可以读取您的.htpasswd文件以及正确的所有权和权限。 还尝试清除浏览器缓存以进行测试。我已经多次看到它看起来不起作用,直到我清除缓存然后我得到提示。