1

問候,mod_rewrite的404和重寫不工作

我不能讓我的htaccess的mod_rewrite工作,因爲它應該.. 我有一些靜態underpages一些基本的RewriteRules,從非WWW版本重定向,現在我想添加自定義404頁(稱爲404.php位於我的根目錄。

會發生什麼事是,當我嘗試訪問underpage它只是一遍又一遍的拋出404消息回我.. 。任何人都可以看到這個代碼的任何問題嗎?

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/?(.*)$ /404.php [L] 
RewriteCond %{HTTP_HOST} ^dhb\.nu$ 
RewriteRule (.*) http://www.dhb.nu/$1 [R=301,L] 
RewriteRule ^policy/$ page.php?page_id=11 
RewriteRule ^cookies/$ page.php?page_id=13 

提前致謝!

回答

1

嘗試使用這樣的:

ErrorDocument 404 /404.php 

在這裏閱讀更多:http://www.garnetchaney.com/htaccess_tips_and_tricks.shtml

+1

SOLV ED!在本文中找到解決問題的方法。 順便提一下,即使在測試時,您也應該讓404頁面大於512字節。否則,Internet Explorer(IE)將加載它所稱的內置「友好HTTP錯誤消息」而不是404頁面。 Chrome瀏覽器的表現並不好。 – Dannemannen 2011-02-04 10:32:19

0

而不是

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/?(.*)$ /404.php [L] 

你應該使用ErrorDocument指令:

ErrorDocument 404 /404.php 
+0

沒有任何區別。404頁現在完全不顯示。 – Dannemannen 2011-02-04 08:54:17