標籤:apache使用者認證
背景:一般php寫的使用者認證,都是允許任何使用者註冊,然後可以登入;該使用者認證需手動在Apache伺服器端添加,認證後才能訪問目錄檔案內容;不適合註冊,僅適用於小範圍內網,如校園網
1. 修改虛擬機器主機設定檔/usr/local/apache2/conf/extra/httpd-vhosts.conf
<Directory /data/www/test> # 首頁根目錄下建立需認證目錄
AllowOverride AuthConfig # 開啟AllowOverride,或者選擇ALL
AuthName "please input password" #描述,自訂
AuthType Basic # 使用者認證類型,固定格式
AuthUserFile /data/.htpasswd # /data/.htpasswd 用於存放驗證使用者和密碼
# apache對“.ht”開頭的密碼檔案預設不允許外部讀取
require valid-user # 出現在帳號密碼檔案中的使用者都能登入
</Directory>
說明:
以下4行也可單獨寫進檔案.htpasswd中,條件:
1)檔案放置於要認證的檔案目錄(如/data/www/test)下
2)需開啟AllowOverride
3)檔案名稱固定為.htaccess
AuthName "please input password"
AuthType Basic
AuthUserFile /data/.htpasswd
require valid-user
2. 建立密碼檔案和使用者
說明:使用htpasswd命令建立使用者,在第一次建立時加-c可建立檔案,第二次無需再加-c,否則會覆蓋掉原檔案
命令 htpasswd -c -m /data/.htpasswd admin # 產生使用者和密碼於/data/.htpasswd檔案中
命令 htpasswd -m /data/.htpasswd admin1
3. 測試
重啟apache,瀏覽器輸入 http://網站/test
本文出自 “一馬踏平川” 部落格,請務必保留此出處http://huangzp.blog.51cto.com/12434999/1906875
Apache使用者認證