2017-06-22 89 views
1

如果我有第三方解決方案將所有鏈接發送到一個測試堆棧,並且我想將這些點擊重新定向到正在測試的堆棧,我如何從%{HTTP_REFERER}獲取主機,以便可以加載請求的頁面在正確的測試棧上。例如,QA正在測試testweb4,但第三方解決方案始終指向testweb5,無論它運行在哪個測試堆棧上。所以我希望testweb5上的.htaccess能夠在referrer是我們的測試堆棧之一而不是testweb5時臨時重定向到referrer上的請求頁面。.htaccess重定向到%{HTTP_REFERER}上的相同路徑?

回答

1

你可以做這樣的事情:

RewriteCond %{HTTP_REFERER} ^(http://testweb(?:1|2|3|4))/ 
RewriteRule^%1%{REQUEST_URI} [NE,R,L] 

但這是不可靠的,因爲引用並不總是發送。然而,這是你要求的,也許它會爲你做這項工作,因爲它只是測試。

+0

這可能會工作。因此RewriteRule中的%1%由RewriteCond中的第一個regex()匹配填充?如果是這樣,那麼,這是行之有效的。 –

+0

是的,就是這樣,'RewriteRule'中的'%1'是上一個'RewriteCond'的第一個匹配項。 – SuperDuperApps

+0

爲了在這裏回答問題,一個人必須做些什麼? :) – SuperDuperApps

相關問題