1.用户认证用来对某些目录中的网页进行访问控制,当用户访问这些页面的时候需要输入用户名和密码进行认证。 2. 配置: # vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/usr/local/apache2.4/docs/abc.com" ServerName abc.com ServerAlias www.abc.com aaa.com <Directory /usr/local/apache2.4/docs/abc.com> AllowOverride AuthConfig AuthName "abc.com user auth" AuthType Basic AuthUserFile /usr/local/apache2.4/docs/.htpasswd require valid-user </Directory> ErrorLog "logs/abc.com-error_log" CustomLog "logs/abc.com-access_log" common </VirtualHost>
其中 <Directory > // 指定认证的目录 AllowOverride AuthConfig // 这个相当于打开认证的开关 AuthName "testdomain.com user auth" //自定义认证的名字,作用不大 AuthType Basic //认证的类型,一般为Basic AuthUserFile /data/.htpasswd //指定密码文件所在位置 require valid-user // 指定需要认证的用户为全部可用用户
# /usr/local/apache2.4/bin/apachectl -t Syntax OK # /usr/local/apache2.4/bin/apachectl graceful # /usr/local/apache2.4/bin/htpasswd -cm /usr/local/apache2.4/docs/.htpasswd lsy //htpasswd为创建用户的工具,-c为create //-m为指定密码加密的方式为MD5 .htpasswd为密码文件 lsy为创建的用户 //第二次不用加,否则密码文件会重置 # curl -xlocalhost:80 -u ytl:000000 abc.com -I
(3)配置验证 配置完可在Windows上访问地址www.abc.com,文件在C:\Windows\System32\drivers\etc\hosts。打开文件在最后一行输入: #你的Linux中的IP www.abc.com 注意: 该文件要移动到桌面上进行修改才可以 接下来,关闭防火墙,设置selinux为Permissive(宽容模式,不会实际限制 domain/type 的存取) # systemctl stop firewalld # setenforce 0 然后,去浏览器访问www.abc.com会有弹窗出现。 (4)验证成功
|
|