У меня есть 3 доменных имени, которые указывают на один и тот же веб-сайт.
domain1.com, domain2.com, domain3.com
Я хотел бы добавить в файл .htaccess способ, которым, если кто-то пытается достичь domain2.com, сервер перенаправляет его на www.domain2.com.
то же самое для domain1.com перейдет на www.domain1.com
Я хотел бы сделать это в ОДНОМ сингле .htaccess, поскольку они указывают на одно и то же место.
теперь у меня примерно так:
Options -indexes
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.domain1\.com [NC]
RewriteRule ^(.*)$ http://www.domain1.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} !^www\.domain2\.com [NC]
RewriteRule ^(.*)$ http://www.domain2.com/$1 [R=301,L]
Я согласен с Риконом, но вот ваш ответ:
RewriteCond %{HTTP_HOST} ^domain1\.com$ [OR]
RewriteCond %{HTTP_HOST} ^domain2\.com$ [OR]
RewriteCond %{HTTP_HOST} ^domain3\.com$
RewriteRule (.*) http://www.%{HTTP_HOST}/$1
Могу ли я предложить другой подход: постоянное перенаправление 301
Это будет намного лучше для вашего SEO.
Вот хороший веб-сайт, на котором рассказывается, как сделать 301 для каждого языка программирования (включая то, как это сделать с .htacess): http://www.seoworkers.com/seo-articles-tutorials/permanent-redirects.html
Вот цитата с веб-сайта о том, как это сделать с помощью .htaccess:
II Перенаправление с помощью .htaccess
Если вы используете сервер Linux / Apache или Microsoft Windows Server, который может запускать модули Apache, вы можете выполнять свои перенаправления с помощью файла .htaccess.
Файл .htaccess - очень мощный инструмент, но он может нанести ущерб сайту, если его неправильно реализовать. Всегда сохраняйте резервную копию любого существующего файла .htaccess, прежде чем вносить какие-либо изменения.
Перенаправление с помощью mod_rewrite
Следующие строки перенаправляют клиента в новое место. В этом случае запрос на файл contact.php отправляется в файл contact-us.php:
rewriteEngine в rewriteRule ^ contact.php $ http://www.dexterityunlimited.com/contact-us.php [R = постоянный, L]
Перенаправить весь трафик без www
Приведенный ниже код будет направлять весь трафик, который не содержит www в URL-адресе, на ту же страницу, но теперь включает www. И это устранит проблему канонизации, которая возникает, когда версия вашего сайта с www индексируется вместе с версией без www:
rewriteCond% {HTTP_HOST} ^ dexterityunlimited.com $ rewriteRule ^. * $ http: //www.dexterityunlimited.com%{REQUEST_URI} [R = постоянный, L]
Первоисточник: Постоянные перенаправления, удобные для поисковых систем - SEO Workers http://www.seoworkers.com/seo-articles-tutorials/permanent-redirects.html#ixzz1Us3DQxtj Согласно лицензии Creative Commons: авторство без производных
К вашему сведению: вот цитата (с сайта выше) о том, зачем делать 301:
Я уверен, что некоторые из вас задают этот вопрос. Ответов много, в зависимости от вашей конкретной ситуации.
Есть ли ссылки на ваш сайт, которые устарели, но вы не можете их изменить? Просто создайте переадресацию, которая будет направлять посетителей, использующих эту устаревшую ссылку, на наиболее подходящую новую страницу вашего сайта.
Есть ли где-нибудь в каталоге ссылка с ошибкой или без www? Воспользуйтесь одним из описанных выше методов, чтобы исправить ситуацию на сервере.
Есть много способов контролировать, что люди видят и куда они могут перейти на вашем веб-сайте. Найдите время, чтобы изучить несколько приемов, и вы можете обнаружить, что ваш трафик увеличивается, потому что вы никого не оставляете позади.