Apache中.htaccess文件功能
一、錯誤文檔的定位
(1)常用的客戶端請求錯誤返回代碼:
401 Authorization Required
403 Forbidden
404 Not Found
405 Method Not Allowed
408 Request Timed Out
411 Content Length Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type
(2)常見的服務(wù)器錯誤返回代碼:
500 Internal Server Error
(3)用戶可以利用.htaccess指定自己事先制作好的錯誤提醒頁面。一般情況下,人們可以專門設(shè)立一個目錄,例如errors放置這些頁面。然后再.htaccess中,加入如下的指令:
ErrorDocument 404 /errors/notfound.html
ErrorDocument 500 /errors/internalerror.html
一條指令一行。
上述第一條指令的意思是對于404,也就是沒有找到所需要的文檔的時候得顯示頁面為/errors目錄下的notfound.html頁面。不難看出語法格式為:
ErrorDocument 錯誤代碼 /目錄名/文件名.擴展名
如果所需要提示的信息很少的話,不必專門制作頁面,直接在指令中使用HTML號了,例如下面這個例子:
ErrorDocument 401 "<body bgcolor=#ffffff> 你沒有權(quán)限訪問該頁面! </body>"
二、文檔訪問的密碼保護要利用.htaccess對某個目錄下的文檔設(shè)定訪問用戶和對應(yīng)的密碼,首先要做的是生成一個.htpasswd的文本文檔,例如:
zheng:y4E7Ep8e7EYV
這里密碼經(jīng)過加密,用戶可以自己找些工具將密碼加密成.htaccess支持的編碼。該文檔最好不要放在www目錄下,建議放在www根目錄文檔之外,這樣更為安全些。
有了授權(quán)用戶文檔,可以在.htaccess中加入如下指令了:
AuthUserFile .htpasswd的服務(wù)器目錄
AuthGroupFile /dev/null (需要授權(quán)訪問的目錄)
AuthName EnterPassword
AuthType Basic (授權(quán)類型)
require user wsabstract (允許訪問的用戶,如果希望表中所有用戶都允許,可以使用 require valid-user)
注:括號部分為學習時候自己添加的注釋
三、拒絕來自某個IP的訪問
如果我不想某個政府部門訪問到我的站點的內(nèi)容,那可以通過.htaccess中加入該部門的IP而將它們拒絕在外。 例如:
order allow,deny
deny from 210.21.112.43
deny from 219.146.95
allow from all
注: 第二行拒絕某個IP,第三行拒絕某個IP段,也就是219.146.95.0~219.146.95.255 想要拒絕所有人?用deny from all好了。不止用IP,也可以用域名來設(shè)定。
四、保護.htaccess文檔
在使用.htaccess來設(shè)置目錄的密碼保護時,它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護起來,不讓別人看到其中的內(nèi)容。雖然可以用其他方式做到這點,比如文檔的權(quán)限。不過,.htaccess本身也能做到,只需加入如下的指令:
<Files .htaccess>
order allow,deny
deny from all
</Files>
五、URL轉(zhuǎn)向
我們可能對網(wǎng)站進行重新規(guī)劃,將文檔進行了遷移,或者更改了目錄。這時候,來自搜索引擎或者其他網(wǎng)站鏈接過來的訪問就可能出錯。這種情況下,可以通過如下指令來完成舊的URL自動轉(zhuǎn)向到新的地址:
Redirect /舊目錄/舊文檔名 新文檔的地址
或者整個目錄的轉(zhuǎn)向:
Redirect 舊目錄 新目錄
改變?nèi)笔〉氖醉撐募?
一般情況下缺省的首頁文件名有default、index等。不過,有些時候目錄中沒有缺省文件,而是某個特定的文件名,比如在pmwiki中是pmwiki.php。這種情況下,要用戶記住文件名來訪問很麻煩。在.htaccess中可以輕易的設(shè)置新的缺省文件名:
DirectoryIndex 新的缺省文件名
也可以列出多個,順序表明它們之間的優(yōu)先級別,
例如:
DirectoryIndex filename.html index.cgi index.pl default.htm
Contact_us Email:ztuteng@gmail.com or QQ:277024877
- apache開啟.htaccess及.htaccess的使用方法
- apache .htaccess文件詳解和配置技巧總結(jié)
- Apache2.4.x版wampserver本地php服務(wù)器如何讓外網(wǎng)訪問及啟用.htaccess
- 用ISAPI_Rewrite讓IIS也支持如Apache下.htaccess的URL重寫
- apache下.htaccess的功能及寫法
- apache中使用.htaccess文件緩存圖片的配置方法
- Apache服務(wù)器中使用.htaccess實現(xiàn)偽靜態(tài)URL的方法
- 21個常用的apache .htaccess文件配置技巧分享
- Apache服務(wù)器中.htaccess的基本配置總結(jié)
- 讓Apache 2支持.htaccess并實現(xiàn)目錄加密的方法
相關(guān)文章
PHP程序員玩轉(zhuǎn)Linux系列 Linux和Windows安裝nginx
這篇文章主要為大家詳細介紹了PHP程序員玩轉(zhuǎn)Linux系列文章,Linux和Windows安裝nginx教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04Ubuntu20.04 VNC 安裝與設(shè)置實現(xiàn)
這篇文章主要介紹了Ubuntu20.04 VNC 安裝與設(shè)置實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-08-08linux中某個文件夾執(zhí)行命令完全卡死的問題及解決
這篇文章主要介紹了linux中某個文件夾執(zhí)行命令完全卡死的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06CentOS 6.5中利用yum搭建LNMP環(huán)境的步驟詳解
這篇文章主要給大家介紹了關(guān)于在CentOS 6.5中利用yum搭建LNMP環(huán)境的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2017-12-12LNMP下防跨站、跨目錄的安全設(shè)置,僅支持PHP5.3.3以上版本
LNMP一鍵安裝包下存在跨站和跨目錄的問題,跨站和跨目錄影響同服務(wù)器/VPS上的其他網(wǎng)站,最近看PHP 5.3,在5.3.3以上已經(jīng)增加了HOST配置,可以起到防跨站、跨目錄的問題2012-10-10