2012-01-06 36 views
-1

我需要重定向這樣的鏈接:重寫規則 - 如何從錯誤重定向到正確的地址

www.website.com/index.phpsite=transport(這是它加入到網頁等許多目錄一個錯誤的鏈接並通過此鏈接到正確的)

這一個(明顯)重定向真的很重要: www.website.com/index.php?site=transport

一切都是關於失蹤「? 「地址。 所以我想使用.htaccess和RewriteRule,但不知道如何。

你能幫我嗎?如何編寫將取代錯誤鏈接的規則?

在此先感謝, Konrad。

+1

嘗試類似的RewriteRule^index.phpsite = $運輸/index.php?site=transport [L] – dierre 2012-01-06 12:32:24

+0

@dierre謝謝,這工作正常! – 2012-01-06 12:47:21

回答

3

下面應該爲你工作(雖然不幸的是我沒有時間充分測試的代碼):

RewriteRule ^index\.phpsite=(.*)$ /index.php?site=$1 [R=301,L,NC] 

我已經使用了.*通配符的結束,因爲我不知道,如果你能您需要重定向的某些網址中有更多網址參數。

所有這些行爲都記錄在related mod_rewrite manual pages中。

+0

您的解決方案啓動500錯誤。不知道爲什麼。 – 2012-01-06 12:49:17

+0

@KonradKolasa謝謝你讓我知道。它現在被修復了。我不小心輸入了'* .'而不是'。*'的正確語法。 – Treffynnon 2012-01-06 12:52:40

+0

謝謝,現在工作! – 2012-01-06 13:39:37

1

如果您使用的是Apache服務器,那麼在htaccess文件中寫入重定向規則。

重寫規則URL1 URL2 [R = 301,L,NC]

0

由於它的工作,這就是我的回答:

RewriteRule ^index.phpsite=transport$ /index.php?site=transport [L]