2012年1月27日 星期五

使用 htaccess 檔案為網站加一道鎖

有時候我們會希望網站的東西不要被搜尋引擎找到,

這時我們會使用名叫 robots.txt 的檔案,來告訴搜尋引擎不要記錄此網站的內容,

但是並不是每家的搜尋引擎或是網路爬蟲都願意遵守這個規範,

這時我們就可以利用 htaccess 檔案來為我們的網站加上一道鎖,

以下是筆者測試所用的環境

作業系統平台:Ubuntu 10.04
網業伺服器:Apache/2.2.14 (Ubuntu)

  1. 先編輯 Apache2 有效網站設定檔 (/etc/apache2/sites-enabled/000-default),對欲進行保護的網頁修改設定值,將 AllowOverride None 改為 AllowOverride All ,存檔離開。
  2. 接著啟動 rewrite 模組,如果之前已啟動,系統會顯示服務已啟動。
    sudo a2enmod rewrite
  3. 重新啟動 Apache2
    sudo /etc/init.d/apache2 restart
  4. 接下來就是重頭戲囉!
    在網頁所在根目錄中,建立 ".htaccess" 檔案 (注意此檔案在Unix系統下為隱藏檔),編輯內容如下
  5. 利用 htpasswd 建立帳號密碼檔
    語法:htpasswd [參數] <帳號密碼檔所在路徑> <要新建的登入帳號>
    • 例如我要新建一個登入帳號為 test,而這個時候 /home/user/.webpass 帳號密碼檔還不存在,則我需要輸入下列指令:
      htpasswd –c /home/user/.webpass test
      (-c 參數用來產生帳號密碼檔 )
    • 若現在我要再新建一個登入帳號為 admin,而這個時候 /home/user/.webpass 已經存在,則只需要輸入下列指令:
      htpasswd /home/user/.webpass admin
      (無需參數)
      確認密碼後,即可完成新建帳號與密碼資料。
  6. 接著就可以開啟網頁看看成果囉!

0 意見: