我是 Linux 管理新手,我正在尝试限制外界访问我的 /var/www 文件夹中的文件。
我做了研究,发现 .htaccess 和 .htpasswd 是一个很好的解决方案。所以我找到了这个在线教程这里它告诉我要创建如下所示的 .htaccess 文件
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/www/.htpasswd
Require valid-user
然后网站上会生成一个密码,所以我输入了密码,它告诉我把密码放在我的 .htaccess 文件中(用户是 tom,我使用 X 来隐藏我的密码)
tom:$XXXXXXXXXXXXXXXXXXXXXXXXXXXX/
我现在将两个文件都放入我的 /var/www/ 目录中。但是,当我尝试通过 Web 浏览器访问我的文件(例如 XXX.XX.XXX/myfiles/test....)时,它仍然允许我访问。
我究竟做错了什么?
谢谢!
答案1
检查你的 Apache 错误日志。这可能是:
- /var/log/apache2/error.log(Ubuntu)
- /var/log/httpd/error_log(RHEL / Red Hat / CentOS / Fedora)
- /var/log/httpd-error.log(FreeBSD)
对于 AllowOverride 设置,您可能需要查看以下文件夹:
- /etc/apache2/sites-available/(Ubuntu)。
如果您采用默认设置,则需要查看以下文件:
- /etc/apache2/站点可用/默认
但是如果您为您的域设置了自定义文件,它可能位于该目录中的另一个文件中。
在 sites-available 文件中,您可能会看到类似这样的内容:
<Directory /var/www/>
AllowOverride None
</Directory>
将‘无’更改为‘全部’。