2013-07-05 5 views
0

Одна из поисковых систем провела мой тестовый сайт: new.mydomain.co.uk, и теперь я закончил тестирование, я хочу перенаправить эти URL-адреса на мой основной сайт, который использует те же расширения.субдомен перенаправляется с помощью подстановочного знака

Пример:

new.mysite.co.uk/thispage/ потребности, чтобы указать на www.mysite.co.uk/thispage и так далее. Я искал и нашел решение (скопированное ниже), которое, хотя я бы достиг своей цели, но это просто указывает на «тестовый сайт» на www.mysite.co.uk, а не на расширения.

Это код, который я использовал:

RewriteCond %{HTTP_HOST} ^new\.mysite\.co.uk$ [NC] 
RewriteRule ^(.*) http://www.mysite.co.uk/$1 [L,R=301] 

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

Большое спасибо

+0

Это просто переписывание URL-адреса в браузере, а не перенаправление. Вы хотите перенаправить или просто переписать URL-адрес? –

+0

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

+0

Читайте здесь для решения https://kb.mediatemple.net/questions/242/How+do+I+redirect+my+site+using+a+.htaccess+file%3F –

ответ

1

Я бы предложил вместо внутри .htaccess, сделать его в правильной конфигурации виртуального хоста Apache. Нечто подобное будет перенаправить весь трафик на new.mysite к www.mysite с правильными путями прилагаемыми:

<VirtualHost *:80> 
    ServerName new.mysite.co.uk 
    Redirect permanent/http://www.mysite.co.uk/ 
</VirtualHost> 

Если вы просто включить строку «Перенаправление» это должно работать для вашего файла .htaccess, а если вы этого не сделаете хотите напрямую отредактировать файлы apache. (.. Если ваша новая и WWW не разделяет ту же физическую папку)

Более сложное правило перезаписи может быть похоже на то, что вы предложили:

RewriteCond %{HTTP_HOST} ^new\.mysite\.co\.uk 
RewriteRule ^(.*)$ http://www.mysite.co.uk/$1 [R=301,L] 

С обратной косой чертой перед тем .uk

Ps. этот вопрос больше подходит для serverfault.com

+0

Благодарим за предложение. К сожалению, у меня нет доступа к редактированию файлов Apache (общий хост), все это нужно сделать через .htaccess. Кроме того, новый. и www. совместно использовать одну и ту же папку. Думаю, это означает, что нет реального решения этой конкретной проблемы? – Huggies

+0

Не идеально, но должно быть возможно с RewriteRule, который захватывает запрашиваемый виртуальный хост. – flurdy

+0

Извините, что немного замедлился. Вы предлагаете мне добавить следующее в мой htaccess? – Huggies

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