2016-03-14 163 views
2

我在創建自定義404時沒有找到問題。PHP 404未找到頁面沒有重定向+包含頁面

所以,我只好試着用的.htaccess:

ErrorDocument 404 http://blablabla.com/404.php 

它的工作!

但問題是它使用REDIRECT。每當我鍵入blablabla.com/sdkfsdkjfksdhfksd

它重定向到blablabla.com/404.php

它改變當前URL,這不是很酷。它很醜。

什麼我該做的:

每當我型blablabla.com/sdkfsdkjfksdhfksd

NO重定向,留在同一個URL。只需require_once定製404.php頁面。

所以,我試試這個代碼:

<?php 
    header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); 
    require_once "404.php"; 
?> 

我把它放在頂部anycode之前。 和此方法不起作用。它顯示在每一頁上。我嘗試類型的URL blablabla.com/sdfjnsfjnksdf

的頁面顯示了沒有找到

對象!

在此服務器上找不到請求的URL。如果您手動輸入網址 ,請檢查拼寫並重試。

如果您認爲這是服務器錯誤,請與網站管理員聯繫。

如何讓這件事情做完?

我的代碼有什麼問題?

在此先感謝...

回答

2

如果你想留在同一個地址,使用絕對路徑,而不是用於錯誤處理程序的完整URL。

變化

ErrorDocument 404 http://blablabla.com/404.php 

ErrorDocument 404 /404.php 

這將改寫錯誤頁以/404.php

+0

是這種方法改變URL?例如www.test.com/sdfksdfksdfkfsk到www.test.com/404.php –

+0

不,它不會更改網址。 – starkeen

+1

你是對的!哇!棒極了!非常感謝你starkeen! –

1

這就是我做

ErrorDocument 404 /404.php 

的URL將是相同的但404.php頁面將被打印。所以,這可能是你想要的。

+0

該死!所以,問題是 - >「http://」這就是爲什麼它改變了URL。你真好!感謝Coder Dude Twodee! –

2

工作液:

.htacces:

ErrorDocument 404 /404.php 
+1

這應該是被接受的答案。 – Swag