2011-04-20 42 views
2

我的問題是如何重定向我的網站上任何不存在的鏈接回到主頁。例如;假設我的網站上有一個名爲「pets」的頁面(http://mywebsite.com/pets),如果用戶偶然輸入了http://mywebsite.com/petsd,我希望將用戶重定向到主頁。任何人都知道如何做到這一點?謝謝。如何重定向網站上不存在的鏈接回到主頁

+0

是'寵物'頁面的現有文件嗎? – Teneff 2011-04-20 22:39:19

+4

當你這樣做時,請不要***更改他們輸入地址欄的地址。如果他們爲您的網站上的實際頁面製作了一個非常小的錯字,他們將能夠輕鬆地糾正錯字,而不必再次輸入。 – Olathe 2011-04-20 22:39:56

+0

我甚至不會顯示主頁。一個體面的錯誤頁面,解釋它是一個404,幷包括一個鏈接到主頁是更好的(「爲什麼這顯示我的主頁?我輸入'寵物'!!」)。更好的是,從URI中提取關鍵字並執行搜索並在錯誤下顯示結果。 – Quentin 2011-04-20 22:47:09

回答

5

在.htaccess文件設置ErrorDocument 404 /index.html

+0

感謝您的回答:D – user719813 2011-04-20 22:41:40

+0

還有一個問題。我如何保留原始的錯字鏈接,以便它仍然出現在URL中? – user719813 2011-04-20 22:48:59

+0

感謝您的回答! :)我已經實現了它,它完美的工作! – user719813 2011-04-21 02:41:49

0

用JavaScript重定向裝備404頁。 確保它是定時的,所以遊客可以看到發生了什麼。

0

可以使用mod_rewrite

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.php [R] 
1

The QSA flag應該做的伎倆。它代表查詢字符串追加,並將保持所有url參數完全啓動。

0

使用mod_rewrite你可以處理404(找不到頁面),像這樣:

RewriteEngine on 
Options +FollowSymlinks -MultiViews 

RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteRule ./[L] 

這將保存在瀏覽器原來的鏈接,但會顯示您的主頁。

相關問題