2016-11-29 2 views
0

Мне нужно перенаправить пользователей в новый домен, но мне нужно, чтобы в случае, если пользователь приходит с определенного URL-адреса, он должен быть перенаправлен на spcific url.htaccess - перенаправить, если соответствует URL

Поясню ...

Если пользователь визита http://oldexample.com/postvendita/ мне нужно перенаправить его http://newexample.com/assistenza

В противном случае, для любого другого URL http://oldexample.com/* мне нужно перенаправить их на http://newexample.com/new-page

Вот мой Ьгу :

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/
RewriteRule ^(.*)postvendita(.*)$ http://www.newexample.com/assistenza [L,R=301] 
RewriteCond %{HTTP_HOST} !^oldexample\.com$ [NC] 
RewriteRule ^(.*)$ http://www.newexample.com/new-page [R=301,L] 

Если я посещаю каждую старую страницу, я буду перенаправлен на http://www.newexample.com/new-page поэтому первое правило не работает, как его изменить?

+0

Должны ли мы считать, что вы обслуживаете оба домена с одного и того же http-сервера? – arkascha

+0

Вы переписываете запрос _current_ здесь, а не что-нибудь, откуда «пользователь приходит». – CBroe

+0

@CBroe На самом деле это не так. Доменное имя 'oldexample.com' можно рассматривать как таковое. – arkascha

ответ

0

Чтобы справиться с этим с помощью .htaccess вы хотите, чтобы соответствовать первой и использовать улов-все, чтобы перенаправить все остальное:

RewriteEngine On 

RewriteRule ^postvendita/?$ http://www.newexample.com/assistenza [R=301,L,NE] 
RewriteRule .*    http://www.newexample.com/new-page [R=301,L,NE] 

301 редиректа является постоянным редирект, который проходит между 90- 99% от ссылка сока (рейтинг мощности) на перенаправленную страницу. 301 относится к коду статуса HTTP для этого типа перенаправления. В большинстве случаев перенаправление 301 является лучшим методом для реализации перенаправления на веб-сайте.

More About Redirects

В качестве альтернативы, если вы не удобные письма RewriteRules, вы можете использовать следующие строки:

Redirect 301 /postvendita/ http://www.newexample.com/assistenza 
Redirect 301 /postvendita http://www.newexample.com/assistenza 
Redirect 301/   http://www.newexample.com/new-page 

Или с RedirectMatch:

RedirectMatch 301 /postvendita/? http://www.newexample.com/assistenza 
RedirectMatch 301 .*    http://www.newexample.com/new-page 

Common .htaccess Redirects

Смежные вопросы