.htaccess文件(或者"分布式配置文件"提供了針對目錄改變配置的方法, 即在一個特定的文檔目錄中放置一個包含一個或多個指令的文件, 以作用於此目錄及其所有子目錄。作為用戶,所能使用的命令受到限制。管理員可以通過Apache的AllowOverride指令來設置。
Unix、Linux系統或者是任何版本的Apache Web服務器都是支持.htaccess的,但是有的主機服務商可能不允許你自定義自己的.htaccess文件。國內的大多數虛擬主機就沒有這個功能。我所知道的提供這個功能的有康盛世紀(就是Discuz的論壇服務商)。
啟用.htaccess,需要修改httpd.conf,啟用AllowOverride,並可以用AllowOverride限制特定命令的使用。如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令來改變。例如,需要使用.config ,則可以在服務器配置文件中按以下方法配置:AccessFileName .config 。
籠統地說,.htaccess可以幫我們實現包括:文件夾密碼保護、用戶自動重定向、自定義錯誤頁面、改變你的文件擴展名、封禁特定IP地址的用戶、只允許特定IP地址的用戶、禁止目錄列表,以及使用其他文件作為index文件等一些功能。
.htaccess是一個古怪的文件名(從Win的角度來說,它沒有文件名,只有一個由8個字母組成的擴展名,不過實際上它是linux下的命名,而很多linux下的東西,我們向來都會認為很古怪的),在Win系統中是不可以直接通過“新建”文件來創建的,不過我們可以利用cmd中的copy來實現,比如copy sample.txt .htaccess。也可以先創建一個htaccess.txt,然後Ftp到服務器,通過FTP來修改文件名。
.htaccess的一個應用是自定義錯誤頁面,這將使你可以擁有自己的、個性化的錯誤頁面(例如找不到文件時),而不是你的服務商提供的錯誤頁或沒有任何頁面。這會讓你的網站在出錯的時候看上去更專業。你還可以利用腳本程序在發生錯誤的時候通知你(例如當找不到頁面的時候自動Email給你)。你所知道的任何頁面錯誤代碼(比如404找不到頁面),都可以通過在.htaccess文件裡加入下面的文字將其變成自定義頁面:
.htaccess的一個應用是自定義錯誤頁面,這將使你可以擁有自己的、個性化的錯誤頁面(例如找不到文件時),而不是你的服務商提供的錯誤頁或沒有任何頁面。這會讓你的網站在出錯的時候看上去更專業。你還可以利用腳本程序在發生錯誤的時候通知你(例如當找不到頁面的時候自動Email給你)。你所知道的任何頁面錯誤代碼(比如404找不到頁面),都可以通過在.htaccess文件裡加入下面的文字將其變成自定義頁面:
ErrorDocument errornumber /file.html
舉例來說,如果我的根目錄下有一個notfound.html文件,我想使用它作為404 error的頁面:ErrorDocument 404 /notfound.html
如果文件不在網站的根目錄下,你只需要把路徑設置為:ErrorDocument 500 /errorpages/500.html