Apache下使用.htaccess文件对网站目录进行密码保护

2015-02-11 14:54:44    2015-02-11 15:54:05

在前面的phpmyadmin配置文章中提到可以在配置文件中设置好多站点的用户名和密码,这样就可以非常轻松地在多个MySQL站点间切换而不必不停地登入登出了。不过这种设置对安全的隐患也是显而易见的。那有没有其它的方法呢?如果你的Web Server是用Apache的话,那就可以很方便地对你网站的某个目录进行密码保护。

建立密码文件

首先我们建立一个密码文件叫.htpasswd,最好不要放在网站文件的下面,这样外部访问不到。比如/home/il8g下面

格式是username:password,每一行设置一个用户名,其中password是经过加密的,比如username:password会变成像username:flswn17zbAsRI

有很多在线生成.htaccess密码的网站,随便google一下“.htaccess password generator”就会出来一大堆。输入你想要的用户名和密码,就会得到加密后的格式。

配置.htaccess

比如我想要对我网站下面phpmyadmin的目录进行密码保护,则可以在phpmyadmin的目录下面建立一个叫.htaccess的文件(如果已经有了的话,可以加在其它配置后面),设置如下

AuthName "Restricted Area"
AuthType Basic
AuthUserFile /home/il8g/.htpasswd #这里要改成你刚刚设置好的密码文件的地址
AuthGroupFile /dev/null
require valid-user

这时候你再尝试打开http://il8g.com/phpmyadmin的话,就会跳出来输入登录信息的提示了。