2013-09-24 51 views
0

說例如我有請求test.com/。mod_rewrite通過在轉發後訪問原始請求URI

在DNS中,這個test.com指向test2.com。因此我的要求是來test2.com

我想要做以下事情。

  1. test.com/*的所有請求將被重定向到test2.com(通過DNS映射到新服務器)。
  2. 在test2.com,我必須做到以下幾點。

    如果(原來的請求是http://test.com/ *) { 如果(用戶代理是移動) { 如果(!(用戶代理是iOS或Android或黑莓或Windows Phone)) { URL重寫 } }}

3.URL重寫我想要寫象下面這樣重寫規則。

http://test.com/abc/index.html ---->http://test2.com/mobil/abc/index.html

我已經試過類似下面。我剛來這地方。

RewriteEngine On 
RewriteCond expr "%{HTTP_REFERER} -strmatch 'http://test.com'" [AND] 
RewriteCond %{HTTP_USER_AGENT} Mobile [AND] 
RewriteCond %{HTTP_USER_AGENT} !(IOS OR Android OR BlackBerry OR Windows Phone) [NC] 

請幫我做到這一點。

語法可能不正確。請用正確的語法幫助我

回答

2

請求test.com將設置HTTP_HOST爲test.com。你可以在你的規則中使用它。

試試這個:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^test\.com$ 
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod" [NC] 
RewriteRule ^(.*)$ http://test2.com/mobil/#1 [L] 
+0

謝謝。如果可能,你還可以給我重寫規則嗎?我剛剛隨機編寫了語法,也請用正確的語法幫助我。 – Patan

+0

這應該是你想要的。隨意問我是否不起作用。 – Scolytus

+0

在移動也我想檢查用戶代理o獲取手機類型的iPhone /黑莓/ Android/Windows。你能否也包括那 – Patan

相關問題