Apache的配置用户登录操作
1、为网站的某个目录设置登录权限(注意,这是针对网站的某个目录的功能设置权限)
如图,我对admin目录设置用户需要登录,才可以后续操作。
需要用到htpasswd 命令,该命令已经在/usr/bin/文件夹下作为系统的命令,htpasswd可以与nagios、SVN、nginx、apache等进行集成使用。这里讨论其使用Apache的情况。
2、开始主配置文件httpd.conf中的子配置文件 ,httpd-vhosts.conf,如图:
在子配置文件httpd-vhosts.conf中设置要设定权限的目录的权限。
<Directory "/usr/local/apache2/htdocs/admin"> #声明被保护目录 Options IndexesFollow SymLinksAllow Override All #开启权限认证文件.htaccess Require all granted </Directory>
3、编辑重写文件.htaccesss加入如下内容
4、建立密码文件,加入允许访问的用户。(此用户和系统用户无关)
-c 建立密码文件,只有添加第一个用户时,才能-c #htpasswd -c /usr/local/apache2/htdocs/admin/apache.passwd test1 -m 再添加更多用户时,使用-m #htpasswd -m /usr/local/apache2/htdocs/admin/apache.passwd test2 参数注意:htpasswd该命令是httpd的命令,需要绝对路径
5、重启apache服务
/usr/local/apache2/bin/apachectl -t
/usr/local/apache2/bin/apachectl restart
6、遇到的问题
在配置好了之后,访问网站目录的时候遇到了如下的问题:
因此tail -f error.log,重新刷新,发现了如下的问题。
发现是我的AuthName没有配置,配置之后,重启就可以。
更多的htpasswd命令可以参考链接:https://www.linuxidc.com/Linux/2012-11/73915.htm