2012-05-29 2 views
1

Итак, я не могу полностью определить перенаправление для этого. Я переезжаю субдомен и все его содержимое в другой домен, но нужно добавить переменную в конец каждого URL, так что она заканчивается так:Переадресация htaccess с переменной добавляется до конца

http://old.domain.com/products/something-or-other.html 

превращается в

http://www.newdomain.com/products/some-or-other.html?p=abc 

Я пробовал это, но он не добавляет переменную, если только вы не находитесь в корне домена.

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^old.domain.com$ 
RewriteRule (.*)$ http://new.domain.com/$1/p_ig=abc [R=301,L] 

EDIT (понял это с RedirectMatch вместо этого):

RedirectMatch 301 ^/(.*)/(.*)$ http://new.domain.com/$1/$2?p_ig=abc 
+0

Apache будет искать самую низкую папку с .htaccess в ней, так же есть ли папка 'products' и имеет ли она .htaccess? – Ansari

ответ

0

Вы можете попробовать это:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^old\.domain\.com$ [NC] 
RewriteRule^http://new.domain.com${REQUEST_URI}?p_ig=abc [R=302,L,QSA] 

После того, как вы убедитесь, что он работает нормально, то изменить R=302 к R=301.