一、編輯虛擬目錄配置文件,設置認證方式
Alias /test"/var/www/test"
<Directory "/var/www/test">
Options Indexes MultiViews
AllowOverride AuthConfig #表示進行身份驗證
Order allow,deny
Allow from all
</Directory>
二、在網站目錄中創建.htaccess文件
vim /var/www/test/.htaccess
AuthName "test" #此處為描述,但經實驗,好像要設置成虛擬目錄的名字
AuthType Basic 驗證類型
AuthUserFile /var/www/test/.htpasswd #密碼文件的路徑
require valid-user
#密碼文件推薦使用.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參數
htpasswd -m .htpasswd 用戶名 更改密碼
htpasswd -D .htpasswd 用戶名 刪除用戶
/*------------------------------------------------------
ps 也可將 1,2 步驟歸結到同一步驟,如下:
alias /test "/var/www/test"
<Directory /var/www/test>
Options Indexes MultiViews
AuthType basic #類型
AuthName "welcome test"
AuthUserFile /var/www/test/.htpasswd #密文配置文件路徑
require valid-user = user test #test 為用戶名 如有其它用戶以此 列在 test 之后
# Order allow,deny
# Allow from all
</Directory>
--------------------------------------------------------*/
重啟apache,OK ! 重啟方法:service httpd restart
四、通過用戶組方式訪問
alias /test01 "/data/web/test01/"
<Directory /data/web/test01>
Options Indexes MultiViews
AuthType basic
AuthName "welcome test"
AuthUserFile /etc/httpd/httppwd
AuthGroupFile /etc/httpd/httpgrp #用戶組文件路徑
require group admin #admin 是用戶組
</Directory>
創建用戶組配置文件
vi /etc/httpd/httpgrp #創建路徑與配置文件中指定文件相同
內容如下:admin:test #注意test 是已經創建好的用戶,如果該組中有其它用戶,一次排列以空格隔開
重啟apache ok!
發表評論