apache使用auth实现网页密码登陆

有时候网站有些地方不打算向外界开放,只允许内部人员访问,比如phpmyadmin数据库管理,这时候就要用到apache得auth设置了,这个模块可以实现访问首次访问页面时,弹出登陆框,如果没有正确的用户名和密码就返回401.

个人原创,版权所有,转载请注明原文地址,并保留原文链接:

http://www.embbnux.com/2014/09/18/apache_use_authorization/

本文默认你的web服务器是apache,nginx也是可以的,有点差别
一 设置登陆密码

ssh登陆服务器:


htpasswd -c /yourdir/apache/passwd/passwords username

New password: yourpassword
Re-type new password: userpassword
Adding password for user username

会把存储密码的文件存在/yourdir/apache/passwd/passwords文件里面,hash加密

二 设置.htaccess

在你要设置访问权限得文件夹下的.htaccess最上面插入下面几句话,如果没有该文件则新建一个:


AuthType Basic
AuthName "用户认证"
# (Following line optional)
AuthBasicProvider file
AuthUserFile /yourdir/apache/passwd/passwords
Require user username

apache上该目录的AllowOverride改为ALL或者AuthConfig

三 重启apache


service apache2 restart

再访问页面就会弹出密码登陆框.

参考: http://httpd.apache.org/docs/2.2/howto/auth.html

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Time limit is exhausted. Please reload the CAPTCHA.