一、錯誤文檔的定位
(1)常用的客戶端請求錯誤返回代碼:
401 Authorization Required(2)常見的服務器錯誤返回代碼:
500 Internal Server Error(3)用戶可以利用.htaccess指定自己事先制作好的錯誤提醒頁面。一般情況下,人們可以專門設立一個目錄,例如errors放置這些頁面。然后再.htaccess中,加入如下的指令:
ErrorDocument 404 /errors/notfound.html
上述第一條指令的意思是對于404,也就是沒有找到所需要的文檔的時候得顯示頁面為/errors目錄下的notfound.html頁面。不難看出語法格式為:
如果所需要提示的信息很少的話,不必專門制作頁面,直接在指令中使用HTML號了,例如下面這個例子:
ErrorDocument 401 "<body bgcolor=#ffffff> 你沒有權限訪問該頁面! </body>"
二、文檔訪問的密碼保護要利用.htaccess對某個目錄下的文檔設定訪問用戶和對應的密碼,首先要做的是生成一個.htpasswd的文本文檔,例如:
這里密碼經過加密,用戶可以自己找些工具將密碼加密成.htaccess支持的編碼。該文檔最好不要放在www目錄下,建議放在www根目錄文檔之外,這樣更為安全些。
有了授權用戶文檔,可以在.htaccess中加入如下指令了:
AuthUserFile .htpasswd的服務器目錄require user wsabstract (允許訪問的用戶,如果希望表中所有用戶都允許,可以使用 require valid-user)
注:括號部分為學習時候自己添加的注釋
三、拒絕來自某個IP的訪問
如果我不想某個政府部門訪問到我的站點的內容,那可以通過.htaccess中加入該部門的IP而將它們拒絕在外。 例如:
order allow,deny注: 第二行拒絕某個IP,第三行拒絕某個IP段,也就是219.146.95.0~219.146.95.255 想要拒絕所有人?用deny from all好了。不止用IP,也可以用域名來設定。
四、保護.htaccess文檔
在使用.htaccess來設置目錄的密碼保護時,它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護起來,不讓別人看到其中的內容。雖然可以用其他方式做到這點,比如文檔的權限。不過,.htaccess本身也能做到,只需加入如下的指令:
<Files .htaccess>五、URL轉向
我們可能對網站進行重新規劃,將文檔進行了遷移,或者更改了目錄。這時候,來自搜索引擎或者其他網站鏈接過來的訪問就可能出錯。這種情況下,可以通過如下指令來完成舊的URL自動轉向到新的地址:
Redirect /舊目錄/舊文檔名 新文檔的地址一般情況下缺省的首頁文件名有default、index等。不過,有些時候目錄中沒有缺省文件,而是某個特定的文件名,比如在pmwiki中是pmwiki.php。這種情況下,要用戶記住文件名來訪問很麻煩。在.htaccess中可以輕易的設置新的缺省文件名:
DirectoryIndex 新的缺省文件名也可以列出多個,順序表明它們之間的優先級別,
例如:
DirectoryIndex filename.html index.cgi index.pl default.htm新聞熱點
疑難解答