求助:关于apache中.htaccess用户验证的问题
这是我的httpd.conf文件中的部分内容
DocumentRoot "/var/www/html"
<Directory "/var/www/html/test">;
Options Indexes
AllowOverride authconfig
order allow,deny
allow from all
</Directory>;
我在/var/www/html/下建立了test目录,并创建了.htaccess文件,内容如下:
AuthName "test"
AuthType Basic
AuthUserFile /var/www/test/.htpasswd
require valid-user
用htpasswd命令创建了用户名和密码,重启apache服务。
当我通过浏览器访问的时候提示我输入用户名和密码,但是我输入了正确的用户名和密码后依然不能访问,不知是哪里设置的不对,请赐教
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
我就是用htpasswd /var/www/test/.htpasswd user1 生成的用户和口令,可是登陆的时候就不行,不知道是怎么回事
注意权限
是谁的权限啊?.htpasswd吗,它的权限是600,我试了改为644,可好像认证就不起作用了:(
[quote]原帖由 "czcaozheng"]我就是用htpasswd /var/www/test/.htpasswd user1 生成的用户和口令,可是登陆的时候就不行,不知道是怎么回事[/quote 发表:
你看過 apache 的 access/error log 中怎麼說的嗎 ?
ll .htaccess 贴出结果.
另外贴出httpd.conf中Users:那两行的内容.
另外不建议把.htpasswd放在网页目录中,这是不安全的做法.
error_log中有这样的报错:
[Mon Jul 11 17:18:37 2005] [error] [client 192.168.0.1] (13)Permission denied: Could not open password file: /var/www/html/test/.htpasswd
[Mon Jul 11 17:18:37 2005] [error] [client 192.168.0.1] user user1 not found: /test
难道是.htpasswd的权限不对,应该是多少啊?
.htaccess:
authname "aatest"
authtype basic
authuserfile /var/www/html/test/.htpasswd
require valid-user
httpd.conf:
User apache
group apache
日志中说的很清楚了,不能打开文件.看看这两个文件apache用户有没有读权限.
不是看内容.
BTW:学linux/unix有两个东西很重要,一定要看,一个是man,另一个就是日志.
如果這樣的訊息所顯示的資訊,您都解決不了
最好回頭重修 linux 的基本功