2011-04-04 93 views
0

我有WP站點與重定向設置如下:我該怎麼讓Apache的404錯誤時.PHP不存在

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 

#RewriteCond %{REQUEST_FILENAME} !-f 
#RewriteCond %{REQUEST_FILENAME} !-d 
#RewriteRule . /index.php [L] 
</IfModule> 

,工作正常進行的所有URL。但是如果我訪問像「/file/does/not/exist.php」這樣的網址,它將顯示一個WP 404錯誤頁面。我不希望這個要求達到WP,它應該顯示從Apache的404。

所以 「/文件/不/沒有/存在」 應該去WP 404頁(它)但 「/file/does/not/exist.php」 應該是一個404 Apache

回答

1

這種衝突與!-f RewriteCond(「不是文件」)。缺少的腳本不是文件,因此它符合重寫條件。您可能需要特別檢查文件名是否包含'.php',而不是重寫爲wordpress。但是如果有人試圖訪問一些其他文件擴展名也應該是404?

+0

你說得對。我在第一個專門檢查文件是否爲.php且不存在的第一個重寫規則後面添加了另一個重寫規則,它返回一個404頭。我還沒有處理其他文件擴展名。任何線索? – Adil 2011-04-06 21:09:07

+0

您可能會將所有WordPress特定的可重寫網址置於路徑中的/ wp前綴下。沒有這個/ wp前綴的任何東西都不應該被重寫,並讓規則處理規則起作用。 – 2011-04-06 22:20:04

相關問題