利用htaccess認證網頁

作者: beau   日期: 2009-05-18 15:02:58   閱讀: http://past.beau.tw/index.php?load=read&id=284
Aopen_img(attachments/200905/0254603734.jpg)pache 可以利用 .htaccess 檔案達到網頁認證的,他是以目錄為驗證節點,凡經過此目錄才能瀏覽的網頁,皆需透過 .htaccess 檔案的驗證之後才可以存取。

  首先請先確認你 Apache 的設定,這邊是以 Apache2 說明,請先修改 /etc/apache2/sites-available/default 檔案中「AllowOverride None」為「AllowOverride All」,再重新啟動 Apache2 就可以使用 .htaccess 所有的功能嚕。

  在要使用網頁認證的目錄下建立 .htaccess 檔案,並將下面的內容輸入該檔案:


  說明一下上面各行的意義:
  1. AuthName "AWStats District"
    用來設定輸入使用者及密碼對話框右上圖紅色方框的文字。
  2. AuthUserFile /Your Path /passwd
    AuthUserFile 在設定「.htaccess」驗證時,要使用的帳號密碼資料檔位置,這邊要使用,而 /Your Path /.passwd 是利用 htpasswd 指令產生的,後面會再說明如何使用 htpasswd 產生帳號密碼的資料檔。
  3. AuthType Basic
    認證的類型,使用 Basic 基本認證即可。
  4. require valid-user
    讓密碼檔內的使用者都能夠登入。
  接下來就要利用 htpasswd 指令來產生帳號密碼的資料檔,如果 passwd 帳號密碼檔尚未存在,請使用 -c 參數來建立新檔案,如果已經有帳號密碼檔,就毋須使用 -c 參數,否則會蓋掉原來的帳號密碼檔喔,如果是第一次建立帳號密碼檔且要建立 test 帳號,請輸入以下的指令:

  htpasswd -c /Your Path/passwd test

  這樣就會在 passwd 檔案建立帳號 test 與其加密過後的密碼。最後,基於安全性的考量,不要把帳號密碼檔放在 /var/www (瀏覽器可瀏覽)目錄,建議可以放在使用者的家目錄。