一、编辑虚拟目录配置文件,设置认证方式


Alias /test"/var/www/test"

<Directory "/var/www/test">

Options Indexes MultiViews

AllowOverride All #表示进行身份验证 默认None

Order allow,deny

Allow from all

</Directory>


二、在网站目录中创建.htaccess文件

vim /var/www/test/.htaccess

AuthName "test" 此处为描述,但经实验,好像要设置成虚拟目录的名字

AuthType Basic 验证类型 Digest摘要认证 并不是所有浏览器都支持

AuthUserFile /var/www/test/.htpasswd 密码文件的路径

require valid-user  允许.htpasswd文件的所有用户访问


以上四个选项最好一个不能缺


#密码文件推荐使用.htpasswd,因为apache默认系统对“.ht”开头的文件默认不允许外部读取,安全系数会高一点哦。

#.htaccess文件最后的 “require”告诉服务器哪些用户可以进入。require valid-user是指只要是.htpasswd中的任何一个都可以进入。也可以指定名单上的某人或某几人可以通过,使用require user username或require user username1 username2 username3。还可以指定某组人可以通过,使用require group groupname。


文件权限

-rw-r--r--   .htaccess

-rwxr--r--   .htpasswd #密码文件如果没有rwx权限,可能会验证失败


三、创建用户密码


就是创建apache的验证用户

htpasswd -c /var/www/test/.htpasswd 用户名

#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数 create

htpasswd -m .htpasswd 用户名 #更改密码

htpasswd -D .htpasswd 用户名 #删除用户


重启apache,OK