用户认证
作用:对特殊访问设置一个用户认证机制,增加安全性
例如对Discuz论坛管理后台访问增加用户认证
1、在对应的虚拟主机配置中加入如下配置
[root@LAMP ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/data/www/"
ServerName www.test.com
#用户认证
<Directory /data/www/admin.php>
AllowOverride AuthConfig
AuthName 'info'
Authtype Basic
AuthUserFile /data/.htpasswd
require valid-user
</Directory>
</VirtualHost>
AuthName 'info' #自定义,验证时的提示信息
AuthUserFile /data/.htpasswd #指定用户密码文件存放位置
检验配置及重启Apache使配置生效
[root@LAMP ~]# apachectl -t
Syntax OK
[root@LAMP ~]# apachectl restart
2、创建用户密码文件及用户
创建密码文件及第一个用户
[root@LAMP ~]# htpasswd -c /data/.htpasswd ljj
New password:
Re-type new password:
Adding password for user ljj
htpasswd:创建用户命令
-c选项:创建密码文件,仅在创建第一个用户时使用,创建用户同时创建密码文件。
创建第二个用户,不使用-C选项,否则会覆盖.htpasswd文件,丢失之前用户密码
[root@LAMP ~]# htpasswd /data/.htpasswd bxh
New password:
Re-type new password:
Adding password for user bxh
查看密码文件
[root@LAMP ~]# less /data/.htpasswd
ljj:$apr1$Qo9sEgRQ$OtlMFmD.TfpCF57wpO/zT0
bxh:$apr1$cIkuUW9p$CRjLoxvDq2KBD0ODbh7cZ/