最近在學習使用Apache服務器的配置,做一個記錄。
Apache下有個.htaccess文件,是Apache的一個特殊的配置文件。這個配置文件默認是沒有的,要手動在各自的項目的根目錄編寫才行。
要實現網站發生404錯誤時跳轉到自定義404頁面:
1.設置Apache加載rewrite模塊,使其能夠支持url重寫相關操作。
2.Apache開啟Override屬性(以上兩個修改,都是在Apache的主配置文件里修改,例如httpd.conf apache2.conf,這兩個配置文件有什么區別,我還不是很清楚,但是都修改才會生效。修改后要重啟Apache)
3.編寫.htaccess 文件(修改這個文件是即時生效的,無需重啟)
windows的Apache的主配置都在http.conf文件里面,而linux下的Apache主配置文件貌似有兩個地方,一個是/etc/apache/apache2.conf 一個是/usr/local/apache2/conf/httpd.conf
一開始我值修改了httpd.conf,沒有效果,后來兩個都修改了,發現生效了。
下面操作:
1.使Apache加載rewrite模塊,其實就是把httpd.conf文件里一個注釋解開,然后重啟Apache就可以了。
上面這段代碼,默認是前面有#,被注釋掉的。解開注釋就好了。
2.把配置文件httpd.conf和apache2.conf里的 AllowOverride 都設置為All(默認是None的)。
3.編寫.htaccess自定義404頁面的配置就這么一行:
ErrorDocument 404 /test/my404.html
ErrorDocument 算是一個指令
404 是錯誤類型的代碼,同理可以處理500錯誤等。
/test/my404.html 是自定義404頁面的路徑,從網站Apache根目錄開始,也就是說其目錄結構應該是這樣:/var/www/test/my404.html