Apache-2.2

Apache 伺服器重寫規則:如何避免“隱式強制重定向 (rc=302)”?

  • December 21, 2010

我有一個非常煩人的問題:

我們的網路伺服器處理 2(更實際,但我們說 2 作為一個更簡單的例子):

  • pretassur.fr
  • pretassuragentimmobilier.fr

這就是我想要做的:改變

(whatever1).pretassuragentimmobilier.fr(/whatever2)

(whatever1).pretassur.fr(/whatever2)?theme=agentimmobilier

所以這是我的重寫:

RewriteCond %{SERVER_NAME} (([a-z]+\.)*)pretassuragentimmobilier.(fr|com)
RewriteRule   ^(.+)        http://%1pretassur.fr$1 [E=THEME:pretassur_agent,QSA]
# if THEME not empty, set it :
RewriteCond   %{ENV:THEME} ^(.+)$
RewriteRule (.*) $1?IDP=%{ENV:THEME} [QSA]

大(巨大)問題是:讓我們看看重寫日誌:

[pretassurmandataireimmo.com] (5)
=> setting env variable 'THEME' to 'pretassur_mandataire'
[pretassurmandataireimmo.com]
=> (2) implicitly forcing redirect (rc=302) with http://pretassur.fr/

啊啊啊啊!“隱式強制重定向” => 我不想要那個!我想在內部重定向到 pretassur.fr,而不是進行真正的重定向!

現在,如果您輸入:http ://pretassurmandataireimmo.com ,它會被重定向到http://pretassur.fr/?IDP=pretassur_mandataire(試試看)我不想要那個!我想顯示此頁面http://pretassur.fr/?IDP=pretassur_mandaaire但不觸及原始主機!

任何的想法?

非常感謝!

即使它們在同一台伺服器上,您也無法在兩個不同的虛擬主機之間進行內部重定向。因此外部(302)重定向。

要完成您想要的,您可以使用“‘proxy|P’(強制代理)”選項。

引用自:https://serverfault.com/questions/214777