«АБМ» ИТ-интегратор
ИТ-интеграции для развития бизнеса
Каталог
1С-Битрикс: Управление сайтом
CRM Битрикс24
Битрикс24 Маркет
Хостинг и домены
Кейсы
Блог
Акции
Услуги
Сайты 1С-Битрикс
Создание сайта или интернет-магазина на готовом решении
Разработка сайта или интернет-магазина
Написание текстов для сайта или интернет-магазина
Обновление и доработка сайта или интернет-магазина
Аудит сайта или интернет-магазина
Поддержка сайта на 1С-Битрикс
Администрирование сервера
CRM Битрикс24
Внедрение Битрикс24
Внедрение IP-телефонии
Интеграция 1С c CRM Битрикс24 и интернет-магазином
Продвижение
Контекстная реклама в Яндекс и Google
SEO-продвижение сайта в поиске
Покупателю
Условия работы
Личный кабинет
Обработка перс. данных
О нас
ИТ-интегратор «АБМ»
Новости
Отзывы
Вакансии
Партнеры
Лицензии и сертификаты
Документы
Контакты
+7 (3952) 49-77-03
+7 (3952) 49-77-03Иркутск
+7 (812) 507-97-03Санкт-Петербург
Заказать звонок
Задать вопрос
Войти
  • Корзина0
  • Отложенные0
sales@abm-it.ru
Работаем онлайн по всей России!
  • Вконтакте
  • Telegram
  • Яндекс.Дзен
«АБМ» ИТ-интегратор
Отложенные 0
Корзина 0
Войти
+7 (3952) 49-77-03
+7 (3952) 49-77-03Иркутск
+7 (812) 507-97-03Санкт-Петербург
Заказать звонок
Кейсы
Блог
Акции
Услуги
  • Сайты 1С-Битрикс
    Сайты 1С-Битрикс
    • Создание сайта или интернет-магазина на готовом решении
    • Разработка сайта или интернет-магазина
    • Написание текстов для сайта или интернет-магазина
    • Обновление и доработка сайта или интернет-магазина
    • Аудит сайта или интернет-магазина
    • Поддержка сайта на 1С-Битрикс
    • Администрирование сервера
  • CRM Битрикс24
    CRM Битрикс24
    • Внедрение Битрикс24
    • Внедрение IP-телефонии
    • Интеграция 1С c CRM Битрикс24 и интернет-магазином
  • Продвижение
    Продвижение
    • Контекстная реклама в Яндекс и Google
    • SEO-продвижение сайта в поиске
Каталог
  • 1С-Битрикс: Управление сайтом
    1С-Битрикс: Управление сайтом
  • CRM Битрикс24
    CRM Битрикс24
    • Битрикс24 Маркет
  • Хостинг и домены
    Хостинг и домены
Покупателю
  • Условия работы
  • Личный кабинет
  • Обработка перс. данных
О нас
  • ИТ-интегратор «АБМ»
  • Новости
  • Отзывы
  • Вакансии
  • Партнеры
  • Лицензии и сертификаты
  • Документы
Контакты
+  ЕЩЕ
    «АБМ» ИТ-интегратор
    Кейсы
    Блог
    Акции
    Услуги
    • Сайты 1С-Битрикс
      Сайты 1С-Битрикс
      • Создание сайта или интернет-магазина на готовом решении
      • Разработка сайта или интернет-магазина
      • Написание текстов для сайта или интернет-магазина
      • Обновление и доработка сайта или интернет-магазина
      • Аудит сайта или интернет-магазина
      • Поддержка сайта на 1С-Битрикс
      • Администрирование сервера
    • CRM Битрикс24
      CRM Битрикс24
      • Внедрение Битрикс24
      • Внедрение IP-телефонии
      • Интеграция 1С c CRM Битрикс24 и интернет-магазином
    • Продвижение
      Продвижение
      • Контекстная реклама в Яндекс и Google
      • SEO-продвижение сайта в поиске
    Каталог
    • 1С-Битрикс: Управление сайтом
      1С-Битрикс: Управление сайтом
    • CRM Битрикс24
      CRM Битрикс24
      • Битрикс24 Маркет
    • Хостинг и домены
      Хостинг и домены
    Покупателю
    • Условия работы
    • Личный кабинет
    • Обработка перс. данных
    О нас
    • ИТ-интегратор «АБМ»
    • Новости
    • Отзывы
    • Вакансии
    • Партнеры
    • Лицензии и сертификаты
    • Документы
    Контакты
    +  ЕЩЕ
      Отложенные 0 Корзина 0
      Делаем редирект на сайте через файл .htaccess — ИТ-интегратор «АБМ»
      Отложенные 0 Корзина 0
      Телефоны
      +7 (3952) 49-77-03Иркутск
      +7 (812) 507-97-03Санкт-Петербург
      Заказать звонок
      • Кейсы
      • Блог
      • Акции
      • Услуги
        • Назад
        • Услуги
        • Сайты 1С-Битрикс
          • Назад
          • Сайты 1С-Битрикс
          • Создание сайта или интернет-магазина на готовом решении
          • Разработка сайта или интернет-магазина
          • Написание текстов для сайта или интернет-магазина
          • Обновление и доработка сайта или интернет-магазина
          • Аудит сайта или интернет-магазина
          • Поддержка сайта на 1С-Битрикс
          • Администрирование сервера
        • CRM Битрикс24
          • Назад
          • CRM Битрикс24
          • Внедрение Битрикс24
          • Внедрение IP-телефонии
          • Интеграция 1С c CRM Битрикс24 и интернет-магазином
        • Продвижение
          • Назад
          • Продвижение
          • Контекстная реклама в Яндекс и Google
          • SEO-продвижение сайта в поиске
      • Каталог
        • Назад
        • Каталог
        • 1С-Битрикс: Управление сайтом
        • CRM Битрикс24
          • Назад
          • CRM Битрикс24
          • Битрикс24 Маркет
        • Хостинг и домены
      • Покупателю
        • Назад
        • Покупателю
        • Условия работы
        • Личный кабинет
        • Обработка перс. данных
      • О нас
        • Назад
        • О нас
        • ИТ-интегратор «АБМ»
        • Новости
        • Отзывы
        • Вакансии
        • Партнеры
        • Лицензии и сертификаты
        • Документы
      • Контакты
      • Личный кабинет
      • Корзина0
      • Отложенные0
      • +7 (3952) 49-77-03Иркутск
        • Назад
        • Телефоны
        • +7 (3952) 49-77-03Иркутск
        • +7 (812) 507-97-03Санкт-Петербург
        • Заказать звонок
      Контактная информация
      Работаем онлайн по всей России!
      sales@abm-it.ru
      • Вконтакте
      • Telegram
      • Яндекс.Дзен

      Делаем редирект на сайте через файл .htaccess

      Главная
      —
      Блог
      —Делаем редирект на сайте через файл .htaccess
      13 сентября 2013 19:00
      Делаем редирект на сайте через файл .htaccess
      Файл .htaccess — идеальный и безопасный редирект страниц внутри сайта.

      Для чего нужен файл .htaccess?

      .htaccess — это специальный файл веб-сервера Apache, в котором записаны инструкции для управления поведением сервера в этой папке, и во всех вложенных (если в них отсутствуют свои файлы .htaccess).

      Данный файл является идеальным и безопасным инструментом для организации редиректа — т.е. перенаправления с одних страниц на другие страницы сайта. 

      Настройка переадресации актуальна при разработке сайта или доработке сайта. Обычно потребность возникает в следующих случаях:

      • Необходимость добавления «www» в URL, чтобы объединить сайт с «www» и без «www».
      • Потребность работы сайта по защищенному протоколу HTTPS с SSL-сертификатом шифрования — настраивается редирект с протокола «http://» на протокол «https://». Это обязательно для работы платежных систем, а также для более активного роста сайта в поиске.
      • Направление на корректные страницы сайта при удалении старых. При удалении обычно перенаправляют на главную страницу или на страницу со схожим контентом.
      • При изменении адреса страниц перенаправляют на новый адрес аналогичной страницы.
      • Если к сайту подключено несколько доменов и чтобы поисковые системы их не считали разными, то также настраивается редирект на один основной домен. Например, с доменов в зонах .com и .рф, на домен в зоне .ru.
      • Для корректного формирования адресов страниц, например, чтобы все страницы были с закрывающим слэшем «/».

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

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

      Способы осуществления редиректа через файл .htaccess

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

      • Redirect;
      • RedirectMatch;
      • RewriteRule.

      Правила использования директивы Redirect

      Redirect [status] URL-path URL-to-redirect
      

      status — это статус кода состояния HTTP (вид перенаправления) в виде трех цифр. Первая цифра указывает на класс состояния: 3xx — Redirection (перенаправление).

      Примеры статусов кода состояния HTTP класса Redirection (перенаправления):

      • 300 Multiple Choices - Множество выборов;
      • 301 Moved Permanently - Перемещено навсегда;
      • 302 Moved Temporarily - Перемещено временно;
      • 303 See Other - Смотреть другое;
      • 304 Not Modified - Не изменялось;
      • 305 Use Proxy - Использовать прокси;
      • 306 Зарезервировано - код использовался только в ранних спецификациях;
      • 307 Temporary Redirect - временное перенаправление.

      Наиболее часто используются коды 301 и 302 перемещение навсегда или перемещение временно.

      URL-path — часть запрашиваемого пользователем или поисковой системой адреса, которая должна обязательно начинаться со слэша «/».

      • Если URL-path заканчивается не слэшем, то редирект будет срабатывать только в случае точного совпадения запрошенного пользователем адреса и URL-path.
      • Если URL-path заканчивается слэшем, то редирект сработает не только для указанного адреса, но и для всех, которые начинаются на указанный адрес. А к URL-to-redirect будет добавлена часть адреса, следующая за последним указанным слэшем в URL-path.

      URL-to-redirect — полный адрес сайта, конкретной страницы или раздела, на который будет осуществляться перенаправление. При этом должен присутствовать протокол (http:// или https://) и закрывающий адрес сайта знак «/».

      Правила использования директивы RedirectMatch

      RedirectMatch [status] URL-regexp URL-to-redirect
      

      Действие директивы RedirectMatch аналогично Redirect. Отличие заключается в том, что в параметрах URL-regexp и URL-to-redirect можно использовать регулярные выражения.

      Специальные символы используемые в регулярных выражениях

      • Точка «.» — подразумевается наличие любого символа.
      • Круглые скобки «()» — все, что в них находится в первом выражении, записывается в специальные переменные $1, $2, $3, и т. д. подряд, в порядке встречи скобок. Далее переменные можно использовать во втором выражении.
      • Квадратные скобки «[]» — все, что в них находится, это так называемый список перечисления. Например: запись [0–9] — означает наличие одной цифры, [a-z] — любую маленькую латинскую букву, а [A-Za-z_-] — любую латинскую букву, знак подчеркивания или прочерк.
      • Вопросительный знак «?» — означает, что символ перед ним или выражение, если оно заключено в круглые или квадратные скобки, может присутствовать, а может и не присутствовать. А если вместо вопросительного знака «?» поставить знак звездочка «*», то символ или выражение в скобках может присутствовать несколько раз, а может и не присутствовать вовсе.
      • Знак степени «^» — означает начало строки, а знак доллар «$» — ее конец.
      • Обратный слэш «\» — если необходимо, чтобы какой-либо специальный символ был применен по его прямому назначению (то есть, чтобы точка стала точкой, а не любым символом), то перед этим символом ставится этот специальный символ «\» . И, соответственно, чтобы обратный слэш им и остался, перед ним так же необходимо поставить этот спецсимвол.

      Правила использования директивы RewriteRule

      RewriteEngine on #Должно быть включено для работы RewriteRule 
      RewriteRule URL-regexp URL-to-redirect [L,R[=status]]

      У директивы RewriteRule более широкий спектр применения, который, в числе прочих возможностей, разрешает ее использование для перенаправления флагов L (выполнить немедленно) и R (редирект). Флаги L и R указываются в конце строки в квадратных скобках «[]».

      Правила использования директивы RewriteRule вместе с RewriteCond

      RewriteEngine on #Должно быть включено для работы RewriteRule
      RewriteCond %{NAME_OF_VARIABLE} URL
      RewriteRule URL-regexp URL-to-redirect [L,R[=status]]

      Директива RewriteCond определяет условия для какого-либо правила. Перед директивой RewriteRule располагаются одна или несколько директив RewriteCond. Следующее за ними правило преобразования используется только тогда, когда URLсоответствует условиям этой директивы и также условиям этих дополнительных директив.

      Переменные сервера %{NAME_OF_VARIABLE} — переменные полностью соответствуют названным похожим образом MIME-заголовкам HTTP.

      Редирект на https и склейка зеркал

      Пример редиректов для склейки зеркал в файле .htaccess:

      # Редирект с http на https 
      RewriteCond %{SERVER_PORT} !^443$ 
      RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
      # Редирект с http на https, кроме файлов обмена 1С: 1c_exchange.php
      RewriteCond %{SERVER_PORT} !^443$
      RewriteCond %{REQUEST_URI} !^(.*)1c_exchange(.*)$ [NC] [OR]
      RewriteCond %{QUERY_STRING} !^(.*)1c_exchange(.*)$ [NC]
      RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
      # Редирект с www на без www (c https)
      RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
      RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
      # Редирект с без www на с www (c https)
      RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
      RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
      # Редирект с без закрывающего «/» на с закрывающим «/»
      RewriteBase /
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_URI} !(.*)/$
      RewriteRule ^(.*[^/])$ $1/ [L,R=301]
      # Редирект нескольких «//» на конце на один «/»
      RewriteCond %{THE_REQUEST} //
      RewriteCond %{QUERY_STRING} !http(s|)://
      RewriteRule .* /$0 [R=301,L]
      # Редирект c исключением index.php, если он есть в конце URL
      RewriteCond %{REQUEST_METHOD} =GET
      RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
      RewriteRule ^(.*)$ %1/ [R=301,L]
      # Редиректы разделов и страниц
      RedirectMatch 301 ^/old_section_and_all_pages/(.*) /new_section/
      RedirectMatch 301 ^/old_section_and_all_pages/(.*) /new_section_and_all_pages/$1
      RedirectMatch 301 ^/old_section/ /new_section/

      Задать вопрос Контакты

      Теги
      Сайт Администрирование Linux
      Назад к списку
      • Статьи 21
      Теги
      1С CRM IP-телефония Linux SEO-продвижение Администрирование Безопасность Битрикс24 Вакансии Интернет-магазин контекстная реклама Обмен с 1С Сайт текст для сайта Управление задачами Хостинг
      Заказать звонок
      Задать вопрос
      Новости
      31 августа 2021
      Переход коробочной версии Битрикс24 на подписку
      31 августа 2021
      Изменение цен в компании ООО «АБМ» с 01.01.2022 г.
      31 января 2021
      В ООО «АБМ» подключен электронный документооборот
      Статьи
      21 марта 2022
      Взломали или атакуют сайт? Как защитить сайт от злоумышленников
      10 марта 2022
      Переход на отечественное ПО для бизнеса под санкциями
      20 января 2022
      Подключение и настройка IP-телефонии
      Кейсы
      Блог
      Акции
      Каталог
      Услуги
      Сайты 1С-Битрикс
      CRM Битрикс24
      Продвижение
      Покупателю
      Условия работы
      Личный кабинет
      Обработка перс. данных
      Контакты
      Компания
      ИТ-интегратор «АБМ»
      Новости
      Отзывы
      Вакансии
      Партнеры
      Лицензии и сертификаты
      Документы
      +7 (3952) 49-77-03
      +7 (3952) 49-77-03Иркутск
      +7 (812) 507-97-03Санкт-Петербург
      Заказать звонок
      sales@abm-it.ru
      Работаем онлайн по всей России!
      • Вконтакте
      • Telegram
      • Яндекс.Дзен
      Интернет-магазин «АБМ»

      © ИТ-интегратор ООО «АБМ». 2012 — 2022 гг. Все права защищены. 
      Соглашение на обработку персональных данных

      Создано в «АБМ»