301 редирект в htaccess с одного домена на другой
Добрый день мои дорогие слушатели/читатели/смотрители
Сегодня я расскажу вам про правильную склейку доменов и 301 редирект через файл htaccess.
Признаюсь честно — давненько я уже не писал, все дело в моем личном времени – к сожалению, оно не резиновое и его катастрофически не хватает в последнее время. Жена в роддоме, так что сын и все домашнее хозяйство лежит на мне, а если учесть, что я еще провожу тренинг и у меня есть свои ученики – сами можете представить – сколько у меня времени.
Но давайте ближе к делу!
Дело в том, что поисковые машины (вроде Яндекс и Google) видят не один сайт, а два. Поясняю:
Допустим, у меня есть домен seregakolt.com, и поисковики видят их два.
— первый seregakolt.com
— второй www.seregakolt.com
Т.е. один и тот же сайт с www и без — поисковыми системами воспринимается их как два различных ресурса.
Какие у этого могут быть последствия? Да самые что ни на есть печальные!
Когда на ваш ресурс будут ставить ссылки – они могут быть как с www так и без, в названии домена. И, в принципе, человек, который будет проходить по ним все равно попадет на ваш сайт.
Но что касается поисковиков – они будут воспринимать их как ссылки на разные сайты и вы будете просто терять часть ссылок! Т.е. часть PR и ТИЦ будут переходить на другой домен.
Получается, что если вы будете раскручивать сайт без www – а поисковая система первым нашла сайт с www, то сайт без www будет восприниматься как дубликат – и все ваши старания будут напрасны, так как он просто выпадет из рейтинга!!!
Таким образом вы будете терять посетителей!
Естественно, когда вы склеите свой домен, все ссылки будут приводить на один сайт, с www – либо без. Как вы уже сами выберете. И поисковая система будет воспринимать все как один сайт, сохраняя его авторитет.
Я знаю, что это чистой воды тупость, но уж так устроены наши поисковики, а раз они приводят львиную долю посетителей – значит, их привередливый характер и бестолковые заскоки нужно учитывать и относиться к ним серьезно!
Как работает 301 редирект и склейка доменов?
Все банально просто – поисковикам указывается главное зеркало и они вес ссылок переводят на его!
Причем склеить можно абсолютно разные домены! Т. е. если у вас сайт был раньше на одном домене, и вы хотите его перевести на другой, но при этом не потерять ссылки, ТИЦ и PR – склейка доменов вам поможет.
Пример можете посмотреть прямо на этом здесь. Попробуйте набрать www.expert-css.com и вас все-равно перебросит на expert-css.com
И www будет удаляться из любых ссылок на мой сайт. И если кто то поставит ссылку с www, поисковик передаст весь ее вес домену expert-css.com
Делаем 301 редирект через файл .htaccess
Сложного в этом ничего нет! Все делается простой правкой (созданием и правкой) файла в обычном блокноте.
Те, у кого CMS MaxSite – могут спокойно просто редактировать этот файл – он идет в комплекте системы!
Если у вас этого файла нет – тогда мы его просто создаем, название файла .htaccess – без каких либо расширений!
Возможно, Windows будет выпендриваться и говорить, что надо задать имя – тогда создайте этот файл через Total Commander или создайте его в любом редакторе (можно в обычном блокноте). (.*)$ http://www.domain.com/$1 [R=301,L]
Просто вместо двух последних строчек напишите эти.
Если у вас есть этот файл, и там содержатся какие-то из этих строчек, но перед ними стоит знак #
Уберите его!
301 редирект с одного домена на другой:
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
Эту строчку вставляем вместо тех двух.
ОБЯЗАТЕЛЬНО:
1. Должна быть строка Options +FollowSymLinks
2. Должна быть строка RewriteEngine On
3. Строчки с редиректом должны идти СРАЗУ после строки RewriteEngine On
4. Файл .htaccess называется так, и никак иначе!
5. Файл .htaccess должен находиться в корневом каталоге!
6. Domain.com – не забудьте поменять на свой домен.
В принципе, это вроде все. Но 301 редирект хорошо понимает Google, а вот для Яндекса надо редактировать/создавать другой файл. Так что шаг ниже является – обязательным!
Склейка доменов для Яндекса:
Опять же идем в корневой каталог сайта и ищем файл с названием robots.txt, если его нет – создаем в обычном блокноте.
В этом файле размещаем следующий код:
User-agent: Yandex Disallow: Host: domain.com
Если у вас этот файл есть, а этих строк нет – значит добавьте их в конце через абзац.
Указываете главное зеркало в строчке Host — не забудьте поставить свой домен
Для тех, кто заказывает раскрутку у частных лиц и компаний.
Конечно, это очень редкий случай, но все же… Предупрежден – значит вооружен!
Иногда злостные оптимизаторы могут склеить свой домен с вашим и раскручивать себя.
Т.е. этот гЛавнюк склеивает и закупает ссылки и рекламу на свой домен, и пока он склеен с вашим – у вас растут пузомерки и посещалка.
И если вы через некоторое время прекращаете сотрудничество, он может спокойно убрать редирект со своего домена на ваш и вся раскрутка за ваши деньги достанется ворюге.
Причем у вас на сайте может остаться файл robots.txt с главным зеркалом на его сайт.
Будьте бдительны! И требуйте постоянных отчетов работ.
Спасибо за внимание, на связи был Серёга!
Если будут вопросы – задавайте в комментах.
Перенос сайта на новый домен, 301 редирект
перенос сайта
новый домен
301 редирект
Полный перенос сайта на новый домен может потребоваться при смене имени компании, подборе более звучного адреса или по ряде других причин.
Самая приоритетная задача при переезде это – сохранить свои позиции, не потерять трафик и вес страниц.
ШАГ 1: Первым делом необходимо перенести все файлы со старого сервера на новый. Проделать это можно через SSH-консоль или бесплатную программу FileZilla, Winscp, любой другой FTP-клиент. Если же смена домена происходит в рамках одного хостера, будет не лишним уведомить его о будущей процедуре, также возможно вам понадобится помощь администратора по Linux серверам.
Базу данных также необходимо скачать, только стоит учесть последние изменения. Сделать это можно скачав дамп сам базы или через PhpMyAdmin, там несложно экспортировать ее на локальный компьютер.
Скаченный файл БД .sql, который содержит все записи, необходимо открыть через .txt редактор (например NotePad++) и с помощью быстрых клавиш (Ctrl+H) осуществить замену старого url адреса на новый.
Далее для корректной работы сайта и правильного подключения к базе данных, необходимо найти конфигурационный файл config.php или подобный, и там указать новые параметры подключения к БД: DB_Name, DB_User, DB_Password, DB_Host.
ШАГ 2: 301 редирект наиважнейшая часть работы, с помощью него вы сможете правильно переадресовать весь поток на новый домен без потери веса страниц, трафика и позиций в поисковых системах.
Переадресацию можно настроить в конфигурационном файле .htaccess, который должен находиться в корневой папке старого домена. Внутри необходимо прописать следующий кусок кода:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !googleab44945hb4565415b. html
RewriteRule (.*) https://new-domain.com/$1 [R=301,L]
Где,
RewriteCond %{REQUEST_FILENAME} !googleab44945hb4565415b.html — файл от google, подтверждающий право собственности на домен
RewriteRule (.*) https://new-domain.com/$1 [R=301,L] — адрес нового сайта
Если некоторые страницы будут удалены на новом домене, редирект необходимо направить на главную страницу. 301 редирект стоит проверять тщательно без упущения различных сложных ссылок с видеозаписями, картинками и другими файлами. Для полного восстановления старых показателей не прекращайте поддерживать хостинг со старым доменом, иначе редирект на новый сайт будет недоступен для пользователей.
Для более быстрой индексации новых страниц укажите в robots.txt новое значения Host:
User-agent: *
Disallow:
Host: new-domain.com
ШАГ 3: Выполняя требования поисковых служб Google и Yandex при при смене домена, вы обеспечите себя лояльностью с их сторон и не потеряете показатели доверия.
Яндекс-Вебмастер требует предоставить права на оба домена, после чего в секции переезд сайта указать новый адрес с добавлением https и www аббревиатур при отображении адреса. В дальнейшем необходимо будет перепроверить все utm-метки для продолжения сбора статистики.
regex — точно перенаправить все URL-адреса, просто измените доменное имя
спросил
Изменено 8 месяцев назад
Просмотрено 46 тысяч раз
У меня есть веб-сайт с примерно 1 тыс. URL-адресов. Сайт переезжает на другое доменное имя. В противном случае URL-адреса будут точно такими же. Я хотел бы включить htaccess или какое-то правило, которое выполняет перенаправление 301 для всех URL-адресов одним махом. По сути, это заменит доменное имя в качестве перенаправления 301.
Пример:
- Текущий URL:
domain.example/blog/post-1.html
- Перенаправление на:
newdomain.example/blog/post-1.html
И это выполнялось как перенаправление 301. Как бы я это сделал?
- :
- REGEX
- APACHE
- .HTACCESS
- Перенаправление
- MOD-reawrite
Поместите это правило перенаправления в вашем Document_root/.htaccess
.(?:www\.)?domain\.example$ соответствует, когда имя хоста в запросе равно www.domain.example
или domain.example
.
RewriteRule
перенаправить все URL-адреса на newdomain.example
с точно таким же URI, как и в исходном запросе. R=301
устанавливает код состояния HTTP на 301
(постоянное перенаправление) NE
для отсутствия экранирования, чтобы избежать кодирования специальных символов (если они есть) из исходных запросов 9(.*)$ http://newdomain.example$1 [R=301,L] Это гарантирует, что все ссылки на старом сайте будут перенаправлены, а поисковые системы, такие как Google, Bing и т. д., будут знать, что домен был перемещен навсегда. Преимущество этого заключается в том, что любое ранжирование из domain.example
переносится в newdomain.example
. Не добавляйте /
после домена в правило перезаписи, иначе оно будет дублироваться.
Это альтернатива описанному выше методу.
9http://newdomain.example%{REQUEST_URI} [L,R=301]1
Как перенаправить страницу на другой домен с помощью файла .htaccess
Когда вы перемещаете свой веб-сайт на новый домен, вам необходимо перенаправить страницы на другой домен. Вот как легко перенаправить страницу на другой домен с помощью файла .htaccess на веб-сервере Apache. Есть несколько способов перенаправить страницу на другой домен. Мы рассмотрим каждый из них.
Как перенаправить страницу на другой домен с помощью файла .htaccess
Ниже приведены шаги для перенаправления страницы на другой домен с помощью файла .htaccess. Убедитесь, что вы включили mod_rewrite в конфигурации веб-сервера Apache. Только тогда ваша конфигурация .htaccess будет применена сервером Apache.
Если вы включили htaccess с помощью mod_rewrite, вы можете перейти к шагу 4.
1. Включить mod_rewrite
Откройте терминал и выполните следующую команду, чтобы включить mod_rewrite в системах Ubuntu/Debian.
$ переписать sudo a2enmod
Если mod_rewrite уже включен, вы увидите предупреждающее сообщение.
Перезапустите веб-сервер Apache
$ sudo systemctl перезапустите apache2
Дополнительная информация: как отключить кэш Apache
2.
Включить .htaccess на сервере ApacheПо умолчанию Apache не разрешает использование файла .htaccess. Итак, откройте файл конфигурации сервера Apache по умолчанию
$ sudo vi /etc/apache2/sites-available/000-default.conf
Добавьте следующие строки непосредственно перед строкой .
<Каталог /var/www/html> Опционы Индексы FollowSymLinks MultiViews Разрешить переопределить все Требовать все предоставленные Каталог>
Перезапустите веб-сервер Apache
$ sudo systemctl перезапустите apache2
Дополнительная информация: как включить mod_ssl в Apache0044 $ sudo vi /var/www/html/.htaccess
Не забудьте добавить следующую строку вверху файла .htaccess
RewriteEngine on
4. Перенаправить страницу на другой домен с помощью файла .htaccess
Допустим, вы хотите перенаправить страницу /product.html в другой домен www.newsite.com . Есть несколько способов перенаправить страницу на другой домен с помощью файла .htaccess.
Перенаправление страницы на другой домен с помощью перенаправления
Добавьте следующую директиву Redirect для перенаправления вашей страницы на другой домен. Оператор перенаправления требует 2 аргумента — исходный URL-адрес и целевой URL-адрес. Вы можете использовать как абсолютные пути URL, так и относительные пути URL
Redirect /product.html http://www.newsite.com/product.html
Если вы хотите постоянно перенаправлять страницу на другой домен, просто добавьте 301 после директивы Redirect. , как показано
Перенаправление 301 /product.html http://www.newsite.com/product.html
Если вы хотите перенаправить все страницы в новый корень домена, просто добавьте следующую строку в .htaccess
Redirect 301 / http://www.newsite.com/
Директива Redirect перенаправит все URL-адреса, начинающиеся с URL-адреса.