1. 程式人生 > >Linux9.7 Apache用戶認證

Linux9.7 Apache用戶認證

dmi ace root override req oot 需要 全部 指定

vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把123.com那個虛擬主機編輯成如下內容
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
<Directory /data/wwwroot/www.123.com> //指定認證的目錄
AllowOverride AuthConfig //這個相當於打開認證的開關
AuthName "123.com user auth" //自定義認證的名字,作用不大

AuthType Basic //認證的類型,一般為Basic,其他類型阿銘沒用過
AuthUserFile /data/.htpasswd //指定密碼文件所在位置
require valid-user //指定需要認證的用戶為全部可用用戶
</Directory>
</VirtualHost>
/usr/local/apache2.4/bin/htpasswd -cm /data/.htpasswd aming
重新加載配置-t , graceful
綁定hosts,瀏覽器測試
curl -x127.0.0.1:80 www.123.com //狀態碼為401
curl -x127.0.0.1:80 -uaming:passwd www.123.com //狀態碼為200

還可以針對單個文件進行認證
<VirtualHost *:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
<FilesMatch admin.php>
AllowOverride AuthConfig
AuthName "123.com user auth"
AuthType Basic
AuthUserFile /data/.htpasswd

require valid-user
</FilesMatch>
</VirtualHost>

Linux9.7 Apache用戶認證