Htaccess переадресация

Переадресация - это очень важная вещь, о которой должен знать каждый вебмастер. Для новичков эта тема актуальна, потому как не все понимают, что такое htaccess переадресация, зачем она нужна и как ей пользоваться. Давайте разберемся в этом вопросе.

Переадресация в принципе - это когда посетитель Вашего сайта, заходя на какую-либо страницу (то есть на определенный url), автоматически попадает на другую страницу (или на другой сайт). То есть его перебрасывает туда, куда Вы укажете.

Одним из удобных решений, где можно настроить переадресацию, является .htaccess. Это файл, который должен находиться на Вашем хостинге в главном разделе. Если такого файла нет, то Вы можете его создать, после чего его нужно открыть в режиме редактирования и там прописывать специальные коды для переадресации, о которых мы узнаем ниже.

Существуют различные редиректы (редирект - это переадресация). На данный момент их 9:

  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308

Каждый из них выполняет свою функцию. Мы же в этой статье будем рассматривать редирект 301, который будет обозначать то, что старый адрес (с которого мы ссылаемся), больше не существует и страница постоянно перемещена на новый адрес. Это хорошо влияет на поисковые системы, поэтому при таком редиректе мы не потеряем поисковые позиции, которых добились.

Для сравнения: редирект 302, в отличие от 301, означает временную переадресацию. То есть подразумевает, что url изменен временно.

Для чего нужна htaccess переадресация?

Переадресация может Вам понадобиться не сразу, а спустя какое-то время после создания сайта, но все же когда-то она Вам понадобится. Например, она нужна тогда, когда Вы хотите поменять адрес страницы, к примеру - Вы поменяли раздел для статьи (и поменяется адрес). Если Вы в этом случае не поставите автоматический редирект 301, то посетители, заходя по старому адресу, будут попадать на несуществующую страницу 404. А так, с редиректом 301, их будет автоматически перебрасывать на новый адрес.

Для чего нужна htaccess переадресация?
Для чего нужна htaccess переадресация?

Также переадресация может понадобиться при переезде сайта на новый домен. Или же при смене протокола http на https, об этом мы тоже поговорим.

Переадресация с одной страницы на другую htaccess

Откройте файл .htaccess, который находится в главной директории на хостинге. Если его нет - то создайте файл с таким именем (будьте внимательны - в начале точка).

Для начала, чтобы редирект 301 в .htaccess заработал, необходимо в самом верху файла прописать две строки:

Options +FollowSymLinks
RewriteEngine On

Уже после этих строк мы пишем коды для переадресации.

Код для переадресации с одной страницы на другую htaccess:

Redirect 301 старый_адрес новый_адрес

Все очень просто: пишем старый адрес, а затем, через пробел, новый адрес страницы.

Переадресация с домена на домен htaccess

Если Ваш сайт переехал на новый домен, то существует такой код:

Redirect / http://www.новый_домен.ru

Все останется прежним, все адреса страниц, поменяется только домен.

Переадресация с домена на домен htaccess
Переадресация с домена на домен htaccess

Например, была у Вас страница http://www.sait.ru/stranica.html. После того, как Вы в htaccess поставили переадресацию на новый домен http://www.sait-new.ru, то посетитель, заходя на адрес http://www.sait.ru/stranica.html будет автоматически попадать на адрес http://www.sait-new.ru/stranica.html (а НЕ на http://www.sait-new.ru).

Переадресация с http на https в htaccess

Такая переадресация будет актуальна, если Вы установили сертификат ssl, который означает, что теперь Ваш сайт будет доступен по протоколу https. Это почти как другой домен, но не совсем. Поэтому код немного другой, чем в переадресации с домена на домен.

Код для переадресации с http на https в htaccess:

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Заключение

В статье мы рассмотрели основные виды htaccess переадресации, которые могут Вам понадобиться в работе с сайтом. Надеюсь, статья была полезной. Удачи!

Добавить комментарий

Ваш адрес email не будет опубликован.