2011-07-29 33 views
0

我只注意到(給出錯誤的URL,即使),有時負載完美的罰款。他們如何做到這一點?我的意思是,假設你按一下,似乎好樣的www.foo.com連結,但它到底包含哪些會在地址欄中顯示爲www.foo.com空格字符%20有些網站管理重定向此到其正確的網址,而其他人只是打破。這怎麼能實現?我猜這是與.htaccess有關,但我不知道該做什麼或在哪裏做。如何重定向錯誤的URL

我想重定向看起來像這樣實際上的網址:http://foo.com/%C2%A0

我收到以下錯誤信息:

所請求的網址/ C2%A0%未在此服務器上找到。

我怎樣才能使這種重定向? 到目前爲止,我想出了:

RewriteEngine on 
RewriteBase/
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /[^%?\ ]*\% 
RewriteCond %{REQUEST_URI} !^/ 
RewriteRule ^(.*)$ http://www.foo.com/ [R=301,L] 

但它不是在所有

+1

這實際上可以屬於網絡上的主人。大多數Web服務器都可以將404或任何錯誤重定向到您選擇的頁面。所以最常用的方法是將404重定向到默認網頁。 – Chad

回答

0

URL Rewrite工作是,如果你想看看可能以其他形式存在的IIS版本重寫的URL假設你意味着這種情況。

不要忘了,瀏覽器可能對什麼人進入,這樣,如果在「foo.com」有人類型的瀏覽器可以在默認情況下修剪空白,而不是URL編碼文本的某些猜測。如果「http://foo.com」失敗,那麼它可能會嘗試「http://www.foo.com」的另一種思路,因爲這些可以被看作是簡單的解釋採取什麼類型的人。如果都失敗則可能只是Google相信地址欄應該像搜索框一樣對待的文本。