1、编辑文件
[root@centos7 ~]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
#打开网页时,让你输入Apache认证的用户名,密码
DocumentRoot "/data/wwwroot/111.com"
ServerName 111.com
ServerAlias www.111.com www.example.com
#指定认证的目录
Allowoverride AuthConfig
#该行相当于打开用户认证的开关
AuthName "111.com user auth"
#自定义认证的名字
AuthType Basic
#认证类型,一般为basic
AuthUserFile /data/.htpasswd
#指定密码文件所在位置(需要手动添加)
require valid-user
#设定需要认证的用户为“AuthUserFile”中定义的所有可用用户
ErrorLog "logs/111.com-error_log"
CustomLog "logs/111.com-access_log" common
2、创建认证的用户名(shenjie),密码(自己输入)
htpasswd 第一次创建输入 -c
第二次就只输入 -m
[root@centos7 ~]# /usr/local/apache2.4/bin/htpasswd -c -m /data/.htpasswd
shenjie
New password:
Re-type new password:
Adding password for user shenjie
3、
[root@centos7 ~]# /usr/local/apache2.4/bin/apachectl graceful
4、记得把.htpasswd的权限给上,我使用的是chmod 755 .htpasswd
5、访问测试
htpasswd 用法如下:
-c:=create,创建一个加密文件
-n:不更新加密文件,只将更新后的用户名密码显示在屏幕上
-m:使用MD5算法对密码进行加密(默认)
-d:使用CRYPT算法对密码进行加密
-p:不对密码进行加密,即明文密码
-s:使用SHA算法对密码进行加密
-b:在命令行一并输入用户名和密码,而不是根据提示输入密码
-D:删除指定用户