2007年11月1日 星期四

Apache設定存取驗証(Basic Authentication in Apache)

之前已經分享了Tomcat簡單設定存取驗証,所以自然也不能少掉Apache囉!優點一樣是簡單省事、容易設定,但是缺點就是效能不是太好,尤其是因為在Apache中用到了< xml:lang="EN-US">.htaccess 文件來作為帳號密碼的存放處,使用Basic 認證的方法, 每次送出一個對受保護的頁面的請求時都必須校驗帳號和密碼,如果.htaccess 文件的帳密有一大串的話,勢必會降低系統的效能,不過對於只有幾個人的小小實驗室而言,這倒也是一個不失效率的管理方式。

測試的實作環境是:

window 2000 server SP4

Apache 2.0.55

假設今天在APACHE_HOME/htdocs資料夾底下想要對AUTH_TEST這個資料夾路徑作存取驗証:

(1)首先到command mode環境切換目錄到APACHE_HOME/bin/資料夾,然後用htpasswd工具建立帳號密碼文件

htpasswd -c -b documentname myusername mypassword

這個documentname的密碼文件會放在bin目錄底下,將這個文件移出放到一個非公開發佈的路徑,我自已是將這個文件移到 APACHE_HOME/my_password/資料夾底下


(2)接下來對APACHE_HOME/conf/httpd.conf作編輯,新增下列元素

<Directory "C:/Apache Group/Apache2/htdocs/AUTH_TEST"> //要作存取驗証的實體路徑
AuthType Basic //AuthType為basic
AuthName "THIS IS MY AUTH_TEST" //出現在提示框的文字
AuthUserFile "C:/Apache Group/Apache2/my_password/my_pwd" 指定帳號密碼文件的實體路徑
Require valid-user
</Directory>

只要上面簡單二步驟設定就可以完成,但其中我省略了許多參數的說明只將重點放在過程,而這些都可以到google找到許多的參考文件唷!!


中文版的apache2.0手冊 Apache Tutorial: .htaccess files

沒有留言:

張貼留言