11.18 Apache用户认证
修改虚拟主机配置文件 /usr/local/apache/conf/extra/httpd-vhosts.conf
<Directory /data/wwwroot/abc.com>
AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
</Directory>
<Directory /data/wwwroot/abc.com> #指定认证的目录
AllowOverride AuthConfig #这个相当于打开认证的开关
AuthName "123.com user auth" #自定义认证的名字,作用不大
AuthType Basic #认证 的类型,一般为Basic
AuthUserFile /data/.htpasswd #指定密码文件所在位置
require valid-user #指定需要认证的用户为全部可用用户
</Directory>
/usr/local/apache/bin/htpasswd -c -m /data/.htppasswd lxylxy //设置密码文件
Options:
-c:=create,创建一个加密文件
-n:不更新加密文件,只将更新后的用户名密码显示在屏幕上
-m:使用MD5算法对密码进行加密(默认)
-d:使用CRYPT算法对密码进行加密
-p:不对密码进行加密,即明文密码
-s:使用SHA算法对密码进行加密
-b:在命令行一并输入用户名和密码,而不是根据提示输入密码
-D:删除指定用户
对网站中指定文件设置用户认证
<FilesMatch 123.php> #改成FilesMatch标签
AllowOverride AuthConfig #这个相当于打开认证的开关
AuthName "123.com user auth" #自定义认证的名字,作用不大
AuthType Basic #认证 的类型,一般为Basic
AuthUserFile /data/.htpasswd #指定密码文件所在位置
require valid-user #指定需要认证的用户为全部可用用户
</Directory>
<FilesMatch 123.php>
AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
</Directory>