2014-03-26 23 views
0

請我需要速戰速決,在文件中的.htaccess刪除.PHP(重定向用戶自定義404頁,如果這樣的文件不存在)

我已經完成了一個網站,我用.htaccess重寫URL來除去.php把我的意圖的唯一已知的文件,也就是說,如果我有about.php然後我可以有​​它好工作有以下.htaccess

Options -MultiViews 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ $1.php [L] 

現在我創造另一條線路來處理定製404錯誤

ErrorDocument 404 /404.html 

現在,這裏的問題是,我得到500 Internal Server Error在導航到未知的文件,而不是重定向到404 ....

阿帕奇重寫是莫名其妙地揮動,所以我只是不現在有時間,任何幫助,請

感謝預期

回答

1

那麼你應該能夠去的網頁不帶.php,所以如果你有這樣一個頭文件或配置文件,只是把這個代碼往上頂會話東西之後。您可以刪除重寫規則。

if (substr($_SERVER['REQUEST_URI'], -4) === '.php') { 
    require '404.php'; 
} 
+0

很好的答案。只會擴展信息多一點..所以它改善了路由,而不是捕獲所有的.htaccess。 – Pogrindis

+0

那麼頭文件在哪裏,我沒有使用框架,我只是想重定向並刪除文件前面的.php,並將其他文件發送到404 ....所以這在我看來是不行的,因爲我必須做的就像將所有請求路由到文件並從該文件構建路由器系統一樣......我沒有時間爲此完成工作 – Temitayo

相關問題