Битрикс как изменить адрес страницы

ЧПУ: делаем адреса понятными Согласитесь, что ссылка на некий элемент инфоблока http://mysite.ru/catalog/pants/pants-striped-flight/ [ /images/conte...

ЧПУ: делаем адреса понятными

Урок
180
из
363

Сложность урока:

2 уровень — несложные понятия и действия, но не расслабляйтесь.


2 из 5

Дата изменения:
03.02.2023

Просмотров:
37994

Недоступно в лицензиях:

Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы (Marketplace > Обновление платформы).


Ограничений нет

  ЧПУ: делаем адреса понятными

Согласитесь, что ссылка на некий элемент инфоблока

http://mysite.ru/catalog/pants/pants-striped-flight/




гораздо понятнее посетителям, чем

http://mysite.ru/catalog/?SECTION_ID=8&ELEMENT_ID=4




. Весомым аргументом в пользу человеко-понятных адресов является и то, что такие адреса лучше воспринимаются поисковыми машинами.

Сделайте красивые адреса для элементов инфоблока вместе с поддержкой

ЧПУ


Средства «1С-Битрикс: Управление сайтом» позволяют сделать ссылки более понятными с помощью специальной функции. Функция встроена во все комплексные компоненты (и отдельные простые) и преобразует стандартный веб-адрес в так называемый человеко-понятный URL (сокращенно ЧПУ).

Подробнее…




в компонентах:

  1. Откройте на

    редактирование


    В режиме правки наведите мышь на область компонента, появится панель настроек. Выберите пункт Редактировать параметры компонента. Откроется форма настройки.

    Подробнее…




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

  2. В секции Управление адресами страниц отметьте опцию

    Включить поддержку ЧПУ




    .
  3. Задайте настройки для ЧПУ:
    • При наличии разделов в инфоблоке в поле Раздел (или Страница раздела) замените #SECTION_ID#/ на #SECTION_CODE#/. Построение ссылки будет выполняться с помощью

      символьного кода раздела




      , а не его

      идентификатора




      .

      Если разделов нет, то оставьте поле пустым.

    • В поле Страница детального просмотра измените #SECTION_ID#/#ELEMENT_ID#/ на #SECTION_CODE#/#ELEMENT_CODE#/ в случае наличия разделов.

      Если разделов нет, то просто замените #ELEMENT_ID# на #ELEMENT_CODE#.

    Если такие настройки не выполнять, то адрес страницы элементов всего лишь изменит вид с http://mysite.ru/catalog/?SECTION_ID=8&ELEMENT_ID=4 на http://mysite.ru/catalog/8/4/.

  4. Сохраните настройки компонента.
  5. Для всех разделов и элементов инфоблока заполните поле

    Символьный код




    .

    Примечание: если поле Символьный код не показывается в форме раздела и/или элемента, то выполните

    настройку форм.


    Настройка формы выполняется только из административной части сайта.

    Если собираетесь настроить форму редактирования элемента, то откройте страницу со списком

    элементов инфоблока. Если же нужно настроить форму раздела, то страницу со списком разделов.

    Откройте на редактирование любой элемент (или раздел соответственно). В правой части формы нажмите на «шестеренку» . Откроется окно с настройками

    Подробнее…




    Кроме того, настройте обязательность заполнения поля Символьный код и вы не будете забывать указывать код при создании новых разделов и элементов. Дополнительно можете включить

    автогенерацию кода




    из названия раздела/элемента путем транслитерации.

    Настоятельно рекомендуется сделать настройки символьных кодов ДО добавления разделов/элементов в инфоблок. Так как для того, чтобы прописать символьные коды в уже добавленных разделах/элементах, придется открывать каждый элемент и транслитерировать название вручную.

  6. В форме инфоблока выполните

    настройку адресов


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

    В форме редактирования инфоблока укажите правильные пути к просмотру элемента инфоблока и раздела (если используются).

    Подробнее…




    так, как меняли для компонента.

Теперь адреса страниц на материалы инфоблока имеют удобный читабельный вид.

  Пример настройки ЧПУ в новостном инфоблоке

  Важно запомнить!

Обратите внимание! При настройке ЧПУ значения в полях Раздел и Детальная информация должны различаться по уровню вложенности или способу формирования ссылок.

Если ссылки на разделы и элементы будут иметь одинаковый вид http://сайт.ru/catalog/символьный_код/, то возникнет конфликт — компонент не сможет определить, открывать ему по ссылке раздел или элемент.

Поэтому в настройках адресов должен быть

разный уровень




вложенности. А если уровень вложенности нужен одинаковый, то используйте префиксы (или постфиксы) при формировании ссылок. Например, в поле Раздел укажите section-#SECTION_CODE#/, а в поле Детальная информацияdetail-#ELEMENT_CODE#/.

  Заключение

Для настройки человеко-понятных адресов необходимо:

  • включить поддержку ЧПУ в компоненте;
  • задать настройки ЧПУ для страниц и разделов;
  • задать символьные коды для страниц и разделов.

1с-битрикс

  • 1С-Битрикс

  • Обработка URL

Добрый день. Подскажите, как переделать url так, чтоб для детальной страницы не было лишних папок? Например:
чтоб страница открывалась не по такому адресу — /info/brands/panasonic/
а по такому — /panasonic/
Админка битрикс


  • Вопрос задан

    более трёх лет назад

  • 832 просмотра


Комментировать

Пригласить эксперта


Ответы на вопрос 3

babarun

Алексей Емельянов

@babarun Куратор тега 1С-Битрикс

Безумный план моих идей в руках больных людей

  • Да вот на старом сайте сделано так и для брендов и для коллекции и хотят, чтоб и на новом так же было. Вот и думаю как в этом случае переделать и получится ли.
    как по ссылке не хочет делаться, слетает в другом месте(

  • babarun

    aleksandra1122, по опыту скажу что точно будут конфликты, когда название бренда пересечётся с адресом какой-нибудь директории. Особенно если товары будут загружаться автоматическим импортом, то вы даже про это не сразу узнаете.
    Всегда можно прописать 301(2) редиректы с /#БРЕНД#/ на /info/brands/#БРЕНД#/. И проблема переезда легко решается и в будущем проблем не будет.

  • Спасибо. Я так и думала сделать.

Stalker_RED

не было лишних папок

если папки — то создать в корне папку /panasonic?

если нет, то используйте роутинг


Комментировать


Похожие вопросы


  • Показать ещё
    Загружается…

10 февр. 2023, в 08:59

1000 руб./за проект

10 февр. 2023, в 08:22

2000 руб./за проект

10 февр. 2023, в 04:49

50000 руб./за проект

Минуточку внимания

  • Подготовка страниц для 301 редиректов
  • Настройка редиректов в Битрикс
  • Передаем страницы на переобход для поискового робота
  • Изменение поискового трафика
  • Наша специализация — доработка и продвижение сайтов на 1С-Битрикс

— Здесь всегда пора пить чай. Мы не успеваем даже посуду вымыть!
— И просто пересаживаетесь, да? — догадалась Алиса.
— Совершенно верно, — сказал Болванщик.
— Выпьем чашку и пересядем к следующей.
— А когда дойдете до конца, тогда что? — рискнула спросить Алиса.

Если у вас есть сайт, в структуре которого давно пора навести порядок, изучите наш опыт настройки редиректов в Битрикс статейного раздела сайта intervolga.ru.

Мы начали вести блог в далеком 2007 году. Сейчас в нем около 300 статей, число растет. Стараемся выдерживать темп 6 — 8 статей в месяц.

Первые несколько лет мы не делали рубрикацию и размещали статьи единым списком.

С развитием компании и блога ввели рубрики: Проекты, Мысли, Жизнь, КаПли (для статей о Корпоративном Портале с адресом /drops/ естественно ;). Отделили статьи о веб-проектах от статей о семинарах и новых технологиях. Были «лихие нулевые», писали обо всем без разбора

Впоследствии появились разделы Подкаст (для видео), Брендинг, Битрикс24 и Интернет-маркетинг для соответствующих подразделений. Появилось ощущение, что если блог распечатать (с комментариями), хватит на маленькую библиотеку с картотекой. Для уменьшения бардака энтропии и наведения порядка решили уменьшить число рубрик и оптимизировать адреса категорий.

Цитата
Цена ошибки была высока. Одно неверное движение, и сайт лишится нескольких тысяч пользователей в месяц — всех, кто переходит в блог из поисковых систем.

Кроме оптимизации адресов мы решали проблему аналитики трафика по разделам блога. Мы хотели получить ответ на вопрос — какие темы статей наиболее востребованы. Какие материалы добавить в другие рубрики, чтобы они стали интересными?

Все статьи блога хранятся с URL-ами вида: /blog/<название категории>/<название статьи>/

Наша задача — изменить у некоторых статей название категории так, чтобы не потерять поисковый трафик.

Для решения задачи нам потребовались:

  • аналитик для исследования трафика и составления таблицы редиректов;
  • веб-разработчик для настройки перенаправлений.

Важно не рубить с плеча и подойти к задаче ответственно — в случае неудачи вы рискуете посещаемостью сайта!

Подготовка страниц для 301 редиректов

Для этой задачи правильно использовать «Постоянное внутрихостовое перенаправление» — 301 редирект. Подобное перенаправление пригодится в случаях, когда вы меняете адреса страниц, протокол (http на https) или переезжаете на новый домен. Прочие виды перенаправлений (302, 303, 307) в практике почти не используются. Радует, что Яндекс и Google в этом вопросе солидарны, советы по настройке редиректов не отличаются.
Настройка 301 редиректа
Для удобства работы мы воспользовались стандартным инструментов экспорта элементов из инфоблока и получили таблицу. Таблица для настроек 301 редирект
Столбец Посещаемость собирали из отдельной таблицы, добытой из Яндекс.Метрики. Думали, пригодится для оценки “важности” статьи. В итоге решили не использовать и изменили часть популярных URL-ов.

В таблицу добавили колонки «Новый раздел» и «Символьный код нового раздела», а также «Новый URL» и «Redirect 301». Работа заключалась в том, чтобы назначить статье «Новый раздел», остальные данные получали автоматически на основе формул. После окончания составления таблицы останется только скопировать столбец с редиректами и вставить в файл .htaccess на сервере.
новые категории статей
Столбец «Совпадение» необходим, чтобы исключить редирект «сам на себя» для статей, которые сохранили адрес.

Работа по изменению категорий в таблице и на сайте заняла несколько часов. Каждую статью пришлось открыть, прочитать наискосок и определить новую категорию. Работа оправдала себя, мы получили дополнительную пользу в виде:

  • Нашли несколько статей без полезной информации и безжалостно удалили. Редирект в таких случаях ставили на категорию;
  • Нашли несколько дублей и в одном случае три статьи (!) об одном и том же. В этом случае оставили самую интересную, остальные перенаправляли на нее;
  • Нашли новую проблему — вакханалия в тегах (служебное поле 1С-Битрикс), которые каждый автор ставит как заблагорассудится, привела к тому, что на сайте появились сотни страниц типа “Поиск по тегу”. В ближайшее время запланирована оптимизация тегов статей.

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

Теперь мы можем сравнивать трафик по направлениям и делать выводы: Сравнение трафика до и после переезда

Настройка редиректов в Битрикс

Сайты на платформе 1С-Битрикс работают на веб-сервере Apache. Редиректы нужно прописывать в специальном файле .htaccess. Файл должен находиться строго в корне сайта и иметь точку в названии.

Так как выполняем внутренние редиректы (не меняем домен), записи будут вне других инструкций в виде:

Redirect 301 /blog/likbez/information-to-be-published/ /blog/projects/information-to-be-published/

Пример
Настройка .htaccess и редиректы
Для редиректов типа межхостовое перенаправление (другой домен, протокол, редирект на www) в Битриксе инструкции нужно писать в это место файла .htaccess:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
#
#Редиректы
#
</IfModule>

Для настройки редиректов нельзя использовать админку, используйте только FTP-клиент. Рекомендуем настроить один-два перенаправления, тщательно проверить поведение на www- и без-www домене. Только после этого настраивать весь список.

Передаем страницы на переобход для поискового робота

Последний шаг — сообщить поисковым роботам о том, что вы поменяли адреса страниц. Для этого сделали следующее:

  • создали новую карту сайта sitemap.xml (Битрикс умеет автоматически);
  • отправили карту сайта на переобход в Яндекс и Google с помощью Инструментов для вебмастеров.

Тем, кто поделится статьей в социальных сетях, на почту придет подробная инструкция о настройке sitemap.xml в 1С-Битрикс.

Изменение поискового трафика

Поисковый трафик составляет 90% посетителей нашего блога. Мы боялись на длительное время потерять посетителей. Опасения не оправдались. Результат:

  • Мы сохранили трафик из Google. Поисковик мгновенно все переиндексировал и уже через пару дней показывал в выдаче новые адреса;
  • Мы в течение 1 недели наблюдали потери трафика из Яндекса. Так как большую часть читателей в наш блог приводит Google, на общую картину Яндекс повлиял минимально — за неделю потеряли чуть меньше 20% поискового трафика на страницы блога;
  • Еще через неделю трафик из Яндекса вернулся в норму.

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

В нашей команде есть как специалисты-аналитики для исследования трафика из поисковых систем, так и веб-разработчики. Если вам требуется изменить структуру сайта, обращайтесь.

Мы собрали список распространенных редиректов для сайтов на Битрикс и оформили в виде универсальной инструкции. Чтобы получить файл, поделитесь статьей в социальных сетях. Удачных перенаправлений!

Наша специализация — доработка и продвижение сайтов на 1С-Битрикс

Веб-интеграция — это создание крупных информационных веб-систем, глубоко интегрированных в бизнес Заказчика. Это снижение затрат на работу с клиентами, рост продаж и автоматизация процессов.

ИНТЕРВОЛГА – компетентный веб-интегратор . Мы можем решить все задачи веб-интеграции собственными силами. Большинство наших проектов– комплексные, интеграционные.
Наш принцип: приносить пользу бизнесу клиента за счет осмысленного применения веб-технологий.

Оставьте заявку на обсуждение комплексного проекта.

Рассказываем, как сделать 301 редирект в Битриксе, редирект с http на https, редирект с www на без www.

Редиректы — это перенаправление посетителей сайта с одной на другую веб-страницу. Переадресация может вести на страницы того же сайта или страницы другого.

Основные виды редиректов:

  • 301 редирект используется, когда страница или сайт навсегда переезжает на другой URL. Такой редирект сообщает, что старый URL можно удалить из поисковой выдачи.

  • 302 редирект чаще используется при разработке сайта, когда владелец сайта временно ставит заглушку на страницы. С таким редиректом адреса страниц не пропадают из поисковой выдачи.

  • 303 и 307 редиректы с временным перенаправлением, аналоги 302.

  • Meta refresh — принудительная переадресация, негативно влияющая на SEO.

Редиректы незаменимы в работе сайта на 1С-Битрикс, когда меняются структура, разделы, адреса страниц.

301 редирект Битрикс

Чтобы сделать постраничный 301-редирект, нужно изменить файл «.htaccess».

  1. Перейдите в панель управления — виртуальным хостингом, виртуальным сервером или выделенным сервером.

  2. В меню слева выберите Главное (1) → Менеджер файлов (2) и откройте «.htaccess», кликнув по нему 2 раза.

Добавьте в файл строку:

Redirect 301 /cat/page.php https://mysite.ru/new-cat/new-page.php

где:

  • /cat/page.php — старый относительный адрес страницы, с которой делается перенаправление;
  • https://mysite.ru/new-cat/new-page.php — полный новый адрес страницы, на которую делается 301-перенаправление.

301 редирект на другой сайт

Можно выполнить как через панель управления, так и изменив файл «.htaccess». Рассмотрим второй вариант.

Добавьте следующие строки:

RewriteCond %{HTTP_HOST} old-site.ru
RewriteRule (.*) http://new-site.ru/$1 [R=301,L]

где:

  • old-site.ru — домен, с которого происходит редирект;
  • new-site.ru — домен, на который происходит редирект.

На скриншоте ниже представлен пример:

301 редирект с домена с WWW на домен без WWW

Для реализации перенаправления добавьте в «.htaccess» непосредственно после строки «RewriteEngine On»:

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

301 редирект с домена без WWW на домен с WWW

Для реализации перенаправления добавьте в «.htaccess» непосредственно после строки «RewriteEngine On»:

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

301 редирект с https:// на http://

Можно выполнить как через панель управления, так и изменив файл «.htaccess». Рассмотрим второй вариант.

В файле «.htaccess» вашего сайта добавьте следующие строки после «RewriteEngine On»:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Если в дальнейшем вы захотите вернутся обратно на HTTP и отключить HTTPS, удалите эти строки.

301 редирект с главной страницы, кроме остальных страниц сайта

Добавьте в «.htaccess» после «RewriteEngine On» строку:

RewriteRule ^$ https://site.ru [R=301,L]

Есть вопрос?

Поможем по любому из способов связи: онлайн-чат на сайте, через личный кабинет, по почте support@reddock.ru, по телефону +7 (495) 008-31-24 или +7 (351) 225-64-56.

Навигация по статье:

Что такое redirect?
Универсальный редирект htaccess
Редирект для WordPress
Редирект для ModX
Редирект для Opencart
Редирект для Битрикс

Что такое redirect

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

Для кого-то фраза “команда веб-серверу” может прозвучать страшно, но на деле это делается очень легко, и с вероятностью 90% Вы справитесь самостоятельно. Конечно, не без помощи этой инструкции.

Сейчас, чаще всего, редирект делают для SEO (склеивают домены или страницы) или заработка (тоже склеивают, но для того, чтобы получить “ранг” и ссылочную массу предыдущего домена для последующей продажи). Очень часто, при изменении структуры сайта, мы меняем URL адреса, но вот поисковый робот об этом не знает и посылает людей (из поисковой сети Яндекс, Google и т.п) на старый адрес страницы. А их не существует. Естественно, что пользователи уходят, поисковая сеть это замечает и выплевывает страницы из индекса. Итог: Вы остаетесь без трафика и нужно заново проиндексировать те же самые страницы, хотя у них поменялся только URL адрес.

URL адрес – это указатель размещения страницы в интернете, который содержит доменное имя и путь к файлу страницы. Например: vk.com или vk.com/groups.

С технической точки зрения, редиректы бывают разные. Когда мы устанавливаем редирект, то веб-сервер может отдавать разные команды. В данной статье мы будем рассматривать 301 редирект (самый популярный), хотя для общей справки ниже опубликуем все статус-коды редиректов.

  • “300” Multiple Choices (несколько вариантов на выбор).
  • “301” Moved Permanently (перемещено навсегда).
  • “302” Temporary Redirect (временный редирект).
  • “303” See Other (затребованный ресурс можно найти по др. адресу).
  • “304” Not Modified (содержимое не менялось – это могут быть рисунки, таблицы стилей, скрипты, и т.д.).
  • “305” Use Proxy (доступ должен осуществляться через прокси).
  • “306” Unused (не используется).

Универсальный редирект htaccess

Это первый и самый простой способ сделать редирект на другую страницу с помощью файла htaccess. Вам необходимо зайти в панель управления хостингом и далее в раздел с файлами сайта. Также, можете воспользоваться FTP клиентом. Нам нужна главная папка сайта www/название_сайта. Здесь находим нужный файл и редактируем его как текст.

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

ищем htaccess через ftp или хостинг

Открываете нужный файл и в самом конце добавьте эту строку:

Redirect 301 /services/usluga-1/ /services/zakazat_izgotovlenie_steklyannih_peregorodok/

Здесь /services/usluga-1/ это старый адрес страницы без доменного имени, а /services/zakazat_izgotovlenie_steklyannih_peregorodok/ новый. Т.е на примере, полный старый адрес мог выглядеть так http://mysite.ru/services/usluga-1/, а новый так http://mysite.ru/services/zakazat_izgotovlenie_steklyannih_peregorodok/.

прописываем 301 редирект

Если по каким-то причинам Вы потерпели неудачу, давайте разбираться в задаче, учитывая особенности CMS (системы управления сайта). Доведем это дело до конца!

Как сделать редирект WordPress

Способ 1

Как и в универсальном способе, нам нужно сначала найти файл htaccess. Он находится в главной папке Вашего сайта www/mysite.ru. Перед редактированием файла делаем резервную копию, дабы в случае поломки сайта мы могли просто восстановить его работу путем загрузки старого htaccess. Открываем и вставляем в него следующие строки.

Redirect 301 /pop/band1/ http://mysite.ru/music/pop/band1/

Здесь /pop/band1/ это старый адрес страницы без доменного имени, а http://mysite.ru/music/pop/band1/ новый. Т.е на примере, полный старый адрес мог выглядеть так http://mysite.ru/pop/band1/, а новый так http://mysite.ru/music/pop/band1/.

Способ 2

Решение через плагин. Для ленивых, отчаявшихся или просто уставших от рутины вебмастеров.

Заходим в панель управления сайта, далее раздел “Плагины” и жмем на вверху кнопку “Добавить новый”.

добавляем новый плагин редирект

Далее, на странице с новыми плагинами, воспользуемся поиском. Набираем в строке “redirection” и устанавливаем данный плагин.

Далее совершаем установку, и плагин появится в разделе “Установленные”. Находим его и жмем “Настройки”, а далее внутри (на странице плагина) выбираем вкладку “Редиректы”.

Попадаем на такую страницу, нажимаем “Добавить новое”.

устанавливаем плагин для 301 редиректов

Теперь, достаточно добавить старый адрес в верхнюю строку и новый в нижнюю. Все просто. Снизу мы выделили пример, по которому вы можете добавить свой редирект.

фото пример 301 редиректа на wordpress

Как сделать редирект Modx

Используем все тот же любимый нами файл htaccess. Чтобы найти данный файл смотрите в раздел универсальный способ. Находится он в главной папке Вашего сайта www/mysite.ru.

Способ 1

RewriteEngine On
RewriteRule ^services/computers.html$ http://mysite.ru/remont-kompyuterov-i-noutbukov.html [R=301,L]

Здесь ^services/computers.html$ это старый адрес страницы без доменного имени, а http://mysite.ru/remont-kompyuterov-i-noutbukov.html новый. Т.е на примере, полный старый адрес мог выглядеть так http://mysite.ru/services/computers.html, а новый так http://mysite.ru/remont-kompyuterov-i-noutbukov.html. Не забудьте про спецсимволы ^ и $.

Способ 2

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

RewriteEngine On
RewriteRule ^(.*)url.html$ http://mysite.ru/new-url.html [R=301,L]

Здесь ^(.*)url.html$ это старый адрес страницы без доменного имени, а http://mysite.ru/new-url.html новый. Т.е на примере, полный старый адрес мог выглядеть так http://mysite.ru/url.html, а новый так http://mysite.ru/new-url.html. Не забудьте про спецсимволы ^(.*) и $.

Как сделать редирект Opencart

Снова отправляемся в файл htaccess. Чтобы найти данный файл смотрите в раздел универсальный способ (самое начало).

RewriteBase /
RewriteRule ^page1?(.*) http://site.ru/new-category/page1 [R=301,L]

Здесь ^page1?(.*) это старый адрес страницы без доменного имени, а http://site.ru/new-category/page1 новый. Т.е на примере, полный старый адрес мог выглядеть так http://site.ru/page1, а новый так http://site.ru/new-category/page1. Не забудьте про спецсимволы ^ и ?(.*).

Как сделать редирект Битрикс

Как много программистов не любят Битрикс за его специфичность, правда настройка редиректа, это не разработка дополнительного функционала и здесь делается все ОЧЕНЬ просто.

Заходим в панель управления Вашего сайта. Далее слева выбираем “Контент” и “Файлы и папки”. Пролистайте страницу ниже.

ищем htaccess на битрикс

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

продолжаем искать htaccess на битрикс

Нужный файл выглядит так (смотрите скриншот ниже). Перед редактированием обязательно сделайте его копию. Ибо если Вы что-то сделаете неправильно, есть вероятность поломки сайта, и вернуть его в былое состояние поможет бекап или загрузка старого файла htaccess через хостинг или ftp.

открываем htaccess на битриксе, чтобы установить 301 редирект

Нажмите редактировать как текст и вставляете следующие строки:

Redirect 301 /services/usluga-1/ /services/zakazat_izgotovlenie_steklyannih_peregorodok/

Здесь /services/usluga-1/ это старый адрес страницы без доменного имени, а /services/zakazat_izgotovlenie_steklyannih_peregorodok/ новый. Т.е на примере, полный старый адрес мог выглядеть так http://mysite.ru/services/usluga-1/, а новый так http://mysite.ru/services/zakazat_izgotovlenie_steklyannih_peregorodok/.

пример 301 редиректа на Битрикс фото скриншот

Если Вы прочитали статью полностью, то заметили, что универсальный метод работает в Битрикс. Это будет самый простой способ сделать редирект в Вашей практике.

В данном видео уроке настроим ЧПУ в 1С Битрикс. Разберем основные настройки компонента новостей, рассмотрим как устанавливать адекватные адреса динамических страниц, настроим инфоблок и элементы новостей для отображения человеко-понятного URL.

Определение:
ЧПУ – веб адреса, удобные для восприятия человеком (а также систем и методов построения таких адресов). Является аббревиатурой от словосочетания «человеко-понятный урл» (где «урл» — жаргонное обозначение URL).

Мы знаем, что ЧПУ используют не только пользователи как адекватное восприятие ссылки, но и это учитывают поисковые системы.

Использование поисковиками чпу

Вся динамическая информация на сайте под управлением Битрикс представлена в информационных блоках, если установить компонент без использования ЧПУ, то адреса страниц будут выводиться в трудно воспринимаемом человеком виде.

Давайте рассмотрим на примере компонента новостей, перейдем на страничку новости. Смотрим сам компонент и как он формирует ссылки, видим, что в нашем случае он не настроен и по этой причине мы в место понятных URL, ссылки на странички формируются с переменой, в которую передается параметр ID новости.

Ссылка без ЧПУ

Битрикс имеет возможность настраивать вывод динамической информации с человеко понятным URL. Давайте на примере данного инфоблока и компонента проведем настройки для отображения ЧПУ в битрикс.

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

В форме спускаемся до группы «Управление адресами страниц», и тут видим, что данный функционал у нас не активирован и это неспроста, так как если его просто активировать без дополнительных настроек инфоблока мы результата не добьемся.

Для начала разберем текущие поля, что они означают:

  • Включить поддержку ЧПУ – это и есть активация данного механизма;
  • Идентификатор раздела – поле принимает параметр идентификатор раздела, по умолчанию поле содержит SECTION_ID, мы можем заменить данный параметр на тот который удобен нам, для примера заменим на (new_razd);
  • Идентификатор новости – поле принимает параметр идентификатор новости, по умолчанию содержит ELEMENT_ID, можем заменить на любой удобный нам, пропишем для примера (new_datal).

Управления адресами страниц

Заполним данные поля и сохранимся, наводя на новость, у нас формируется ссылка с нашим идентификатором и ID самой новости. Для Робота этот URL не совсем приемлемый и для человека тоже не совсем понятно, что за новость /?new_datal=1 или /?new_datal=2 по этому, такие настройки используются для первоначального отображения материалов или в случаях когда это не важно, к примеру при формировании закрытых разделов которые закрыты от индексации роботами или когда данный параметр не задействован в компоненте. В нашем случае он не обходим и давайте проведем ряд настроек понятных ЧПУ. 

Управление адресами страниц ЧПУ

Переходим повторно в настройки компонента, в форме спускаемся до группы «Управление адресами страниц» и активируем функционал. 

Нам отобразились несколько полей для ввода и давайте разберем их подробнее:

  • Каталог ЧПУ (относительно корня сайта) – это сам путь до папки, с которой работает компонент. Путь может как существовать физически, так и не существовать;
  • Страница общего списка – в данное поле можно прописать путь к общему списку элементов. Переход на эту страницу будет происходить по ссылке «Вернуться к списку»;
  • Страница раздела – что бы перейти в раздел нужно в качестве параметра передавать ID раздела (#SECTION_ID#). По умолчанию поле пустое или содержит #SECTION_ID#/. Если разделы в инфоблоке не заданы, то поле требуется оставить пустым;
  • Страница детального просмотра – прописываем путь к странице детального просмотра. В качестве параметра должно передаваться ID элемента по умолчанию содержит #ELEMENT_ID#/;
  • Страница RSS – тут можно задать часть содержимого адресной строки при переходе к странице rss, например, rss/;
  • Страница RSS для раздела — в поле задается часть содержимого адресной строки при переходе к странице rss в каждом разделе. По умолчанию #SECTION_ID#/rss/

В данном уроке RSS мы затрагивать не будем, мы все же разбираем настройки ЧПУ, давайте сохраним форму при нынешних настройках и посмотрим что получилось.

Активная форма управления адресами страниц

При наведении на новость, теперь идентификатор (new_datal=2) который до этого приписывали, пропал и отображается только /ID/ самой новости. В нашем случае это не устраивает, так как мы хотим добиться понятного URL адреса, в котором будет прописан символьный код, а не просто ID статьи.

Прежде мы должны понять, как работает механизм ЧПУ, откуда он берет символьный код и при каких условиях он его подставляет!

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

Настройка ЧПУ в инфоблоке 

Переходим в Административную часть, Контент, Инфоблоки, Типы информации, открываем наши новости. Открываем вкладку «Поля», спускаемся в самый низ и первое что мы установим это «Символьный код» был обязательным у элементов, это параметр не даст сохранить новость без символьного кода.

Далее, включаем проверку URL на уникальность, и активируем Транслитерацию, задаем максимальную длину в 100 символов, приведем ЧПУ к нижнему регистру.

Установим замену пробелов и прочих символов на прочерк, и удалим из него лишние элементы, внешние сервисы для перевода задействовать не будем, сохраняемся.

Настройка символьного кода

Прописываем URL в элементах инфоблока

Переходим теперь в сам контент сайта, выбираем наши новости и кликнем по любой из них. Если у нас не отображается параметр «Символьный код» нам необходимо настроить его вывод.

Щелкаем по шестеренке, в доступной вкладке выбираем новость и в доступных полях появился символьный код, выбираем его путем нажатия по стрелочке перемещаем в ту категорию в которой нам удобно будет его формировать. В моем случае я его размещу под «Названием» и сохраню изменения.

Теперь нам нужно каждой статье прописать тот URL который мы бы хотели видеть, с помощь функции «Генерации кода» мы можем нажать замок и система автоматически заполнит поле, но не всегда такой ЧПУ по этому я его немного подправлю и сохранюсь.

Символьный код в элементе

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

Выделяем новости, в которых не установлен код, жмем карандашик и прописываем свой URL, сохраняемся и далее переходим на страничку с компонентом.

Настраиваем компонент страницы для вывода понятных ЧПУ

При данных настроек которые мы внесли на страничке явных изменений мы не увидим, так как сам компонент нужно настроить под вывод наших URL адресов. Если не включен режим быстрой правки, активируем его и переходим в настройки самого компонента, спускаемся до «Управления адресами страниц» и тут в поле «Страница детального просмотра» указываем не #ELEMENT_ID#/, а #ELEMENT_CODE#/ и сохраняем форму.

Прописываем CODE

Теперь если мы посмотрим на ссылку детальной новости мы такой вид, весьма понятный и удобный для восприятия.

В рассмотренном нами случаи инфоблок не имел разделов, и все элементы хранились в корне инфоблока, а на сайте выводились без учета разделов. Если в инфоблоке есть разделы как на примере каталога, то в данном случае необходимо настроить ЧПУ и для разделов.

По аналогии это делается, как мы настраивали для элементов, порядок действий следующий:

  • Настроить инфоблок разделов;
  • Настроить символьный код разделов и элементов;
  • Настроить компонент для отображения URL.

Это Вам будет домашним заданием. Настройте у себя на сайте ЧПУ у инфоблока с разделами, а в следующем видео я покажу как настраивать ЧПУ у каталог товаров в котором имеются разделы и выведем их элементы при помощи комплексного компонента «Каталога».

Если у кого остались вопросы по данному материалу, и кто-то не понял, как настраивать ЧПУ в битрикс пишите в комментариях, что вызывает сложность.

Оставить комментарий:

Настройка редиректов (htaccess) в Битрикс

В каждой CMS системе есть свои особенности, свои плюсы и минусы. В 1C-Bitrix, также есть куча своих нюансов, об одном из них расскажу.

Избавляемся от дублей в Битрикс

Речь идет про Apache, или Apache/Nginx, и работу через файл htaccess. Бывают разные ситуации, когда не все редиректы отрабатывают или «ложится» админка и т.д. Здесь рассмотрен пример в котором ВСЕ работает (или пока что работает 🙂 ).

Какие дубли убираем

  1. дубли слеша на конце урлов — принудительно добавляем
  2. дубли главного зеркала — принудительно на non-www
  3. дубли с /index.php при просмотре с главной
  4. дубли с /index.php при попытке открыть такой урл с внутренних страниц. Например site.com/index.php/services/qa
  5. дубли вида site.com/alias/index.php
  6. дубли .html в конце урла — принудительно «отрезаем»

Собственно сам htaccess

< IfModule mod_rewrite.c >
Options +FollowSymLinks
RewriteEngine On
#добавляет слэш в конец
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]
#редирект на без www
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
#редирект с /index.php
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/
RewriteRule ^index.php$ http://site.com/ [R=301,L]
#редирект с внутренних /index.php
RewriteCond %{REQUEST_URI} ^/index.php/(.*)$
RewriteRule (index.php)/(.*) http://site.com/$2 [R=permanent,L]
#убирает .html со всех урлов
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}s/+([^.]+).html [NC]
RewriteRule ^ /%1/ [R=301,L]
#убирает /index.php в конце алиаса
RewriteRule ^(.*)index.php$ $1 [R=301,L]
#стандартный набор Битрикс
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
RewriteRule .* — [E=REMOTE_USER:%{HTTP:Authorization}]
< / IfModule >

Использовать нужно только так (в таком порядке) как тут написано!

Это все дело обернуто в стандартную конструкцию «IfModule» — по умолчанию.

Схожая статья — основные редиректы, с чего начать?

И напоследок — небольшой совет ↓

Если Вы не очень поняли, что написано выше, или самостоятельно не получается избавится от дублей в Битрикс — не переживайте!
Вам поможет простой и удобный инструмент для управления редиректами в Битрикс, рекомендую установить модуль Редирект Мастер.

В нем можно удобно:

  • создать редиректы через админку,
  • загрузить их из Excel,
  • сгенерировать редиректы при изменения ЧПУ,
  • настроить их автоматическое создание.

Более полый перечень функций можно посмотреть на официальном сайте разработчика: atlant2010.ru
Модуль доступен в Маркетплейс 1С-Битрикс.

max-levsha.by

Битрикс — Редиректор — модуль для создания SEO-редиректов

Редиректор — модуль для создания SEO-редиректов

Редиректор — модуль для управления перенаправлениями посетителей между страницами сайта.Модуль основывает свою работу на правилах редиректов, которые задаются администратором сайта или сотрудником, отвечающим за SEO-продвижение.В каких случаях полезен модуль:Переезжаете со старой CMS на Битрикс и нужно сохранить ссылочную массу.Решили изменить структуру разделов сайта или товарный каталог интернет-магазина.Часто меняете URL-ы страниц товаров в процессе их редактирования — вам поможет автоматический режим работы модуля, когда редиректы создаются модулем самостоятельно.Решили удалить страницы или разделы сайта.Нужен редирект для HTTPS, домена без www (или наоборот), добавление слэша в конце адресов.Нужно выделить один главный домен сайта среди нескольких.Что умеет модуль:Создание неограниченного количества правил переходов администратором или SEO-специалистом в визуальном режиме в панели управления сайтом.Поддержка многосайтовости: правила могут быть привязаны как к одному, так и к нескольким сайтам одновременно. При посещении отдельных сайтов проверяются редиректы только текущего сайта.Последовательное выполнение нескольких правил в один редирект:Представьте, что у вас есть два правила:Первое со страницы /catalog/ на страницу /store/.Второе со второстепенного домена www.nosochki.ru на главный домен noski.ru.Если посетитель зайдёт на страницу http://www.nosochki.ru/catalog/, то он получит сразу итоговый редирект на http://noski.ru/store/ — и это будет только один редирект, а не два!Модуль самостоятельно «пройдёт» все промежуточные варианты и выдаст окончательный редирект.Быстрая настройка стандартных редиректов:домен с www и без wwwс index.php в конце адреса или без негосо слэшем в конце адреса или без негоредирект с http на https и обратноудаление множественных слэшей из адресаВ качестве условий на проверку можно задать: протокол страницы, доменное имя сайта, путь до страницы, параметры.Можно задавать правила переходов в зависимости от географии пользователя: по городу, области или целой стране сразу!Можно задавать период активности правила (по датам), а также включать и выключать отдельные правила одной галочкой.Можно использовать пользовательские функции для проверки текущего адреса на соответствие правилу, а также пользовательские функции для определения итогового адреса для перехода.Импорт редиректов из Excel (можно загрузить файл или просто скопировать данные напрямую из Excel).Режим тестирования редиректов позволяет вам ввести адрес любой страницы сайта и посмотреть, какие редиректы на ней должны произойти.История переходов сохраняет информацию обо всех случаях срабатывания правил редиректов, информацию о пользователях, их IP-адресах и правилах, которые сработали.Модуль регистрирует серверные 404 ошибки на сайте и позволяет отследить их появление, найти источник битых ссылок и создать правило для редиректа со страницы с 404 ошибкой на нормальную страницу.Режим отладки модуля: в режиме отладки редиректы производиться не будут.Вместо этого в шапке сайта администраторы будут видеть, какой редирект должен был сработать на текущей странице.Условия соответствия можно проверять на совпадение, содержание подстрок, и регулярные выражения.Автоматичекий режим модуляЕщё одной уникальной функцией модуля «Редиректор» является автоматический режим работы.В автоматическом режиме «Редиректор» следит за изменением адресов страниц разделов и элементов инфоблоков при любых попытках изменения этих разделов и элементов.Как именно действует модуль:Что случилось?Что делает модуль?Изменился элементЕсли изменилось какое-либо поле, влияющее на адрес страницы элемента, модуль создаст редирект со старого адреса страницы элемента на новый.Изменился разделЕсли изменилось какое-либо поле, влияющее на адрес раздела, модуль создаст редирект со старого адреса страницы раздела на новый, а также аналогичные редиректы для всех подразделов и элементов данного разделаУдалён элементБудет создан редирект на раздел данного элементаУдалён разделБудут созданы редиректы со всех внутренних подразделов и товаров на родительский разделДобавлен элементЕсли с данного адреса есть ранее созданный автоматический редирект на другой адрес, он будет отключёнДобавлен разделЕсли с данного адреса есть ранее созданный автоматический редирект на другой адрес, он будет отключён Автоматический режим включается для каждого инфоблока отдельно и не требует дальнейшего участия администратора: при создании, редактировании и удалении разделов и элементов отслеживаемого инфоблока все операции с редиректами будут происходит автоматически.Модуль поддерживает следующие коды редиректов:301 Moved Permanently — страница навсегда перемещена на новый адрес, кэшируется браузером302 Moved Temporarily — страница временно перемещена на новый адрес, кэшируется браузером303 See Other — результат можно найти по новому адресу, не кэшируется браузером307 Temporary Redirect — страница на короткое время перемещена на новый адрес, кэшируется браузером410 Gone — страница по данному адресу удалена

Описание

Технические данные
Опубликовано:
03.11.2017
Обновлено:
24.12.2019
Версия:
1.1.9
Установлено:
100 — 499 раз
Подходящие редакции:
«Первый сайт», «Старт», «Стандарт», «Малый бизнес», «Эксперт», «Бизнес», «Корпоративный портал», «Энтерпрайз»
Адаптивность:
Нет
Поддержка Композита:
Нет
Совместимо с Сайты24
Нет
Описание

Редиректор — модуль для управления перенаправлениями посетителей между страницами сайта.

Модуль основывает свою работу на правилах редиректов, которые задаются администратором сайта или сотрудником, отвечающим за SEO-продвижение.

В каких случаях полезен модуль:

  1. Переезжаете со старой CMS на Битрикс и нужно сохранить ссылочную массу.

  2. Решили изменить структуру разделов сайта или товарный каталог интернет-магазина.

  3. Часто меняете URL-ы страниц товаров в процессе их редактирования — вам поможет автоматический режим работы модуля, когда редиректы создаются модулем самостоятельно.

  4. Решили удалить страницы или разделы сайта.

  5. Нужен редирект для HTTPS, домена без www (или наоборот), добавление слэша в конце адресов.

  6. Нужно выделить один главный домен сайта среди нескольких.

Что умеет модуль:

  1. Создание неограниченного количества правил переходов администратором или SEO-специалистом в визуальном режиме в панели управления сайтом.

  2. Поддержка многосайтовости: правила могут быть привязаны как к одному, так и к нескольким сайтам одновременно. При посещении отдельных сайтов проверяются редиректы только текущего сайта.

  3. Последовательное выполнение нескольких правил в один редирект:
    Представьте, что у вас есть два правила:
    Первое со страницы /catalog/ на страницу /store/.
    Второе со второстепенного домена www.nosochki.ru на главный домен noski.ru.
    Если посетитель зайдёт на страницу http://www.nosochki.ru/catalog/, то он получит сразу итоговый редирект на http://noski.ru/store/ — и это будет только один редирект, а не два!
    Модуль самостоятельно «пройдёт» все промежуточные варианты и выдаст окончательный редирект.

  4. Быстрая настройка стандартных редиректов:

    1. домен с www и без www

    2. с index.php в конце адреса или без него

    3. со слэшем в конце адреса или без него

    4. редирект с http на https и обратно

    5. удаление множественных слэшей из адреса

  5. В качестве условий на проверку можно задать: протокол страницы, доменное имя сайта, путь до страницы, параметры.

  6. Можно задавать правила переходов в зависимости от географии пользователя: по городу, области или целой стране сразу!

  7. Можно задавать период активности правила (по датам), а также включать и выключать отдельные правила одной галочкой.

  8. Можно использовать пользовательские функции для проверки текущего адреса на соответствие правилу, а также пользовательские функции для определения итогового адреса для перехода.

  9. Импорт редиректов из Excel (можно загрузить файл или просто скопировать данные напрямую из Excel).

  10. Режим тестирования редиректов позволяет вам ввести адрес любой страницы сайта и посмотреть, какие редиректы на ней должны произойти.

  11. История переходов сохраняет информацию обо всех случаях срабатывания правил редиректов, информацию о пользователях, их IP-адресах и правилах, которые сработали.

  12. Модуль регистрирует серверные 404 ошибки на сайте и позволяет отследить их появление, найти источник битых ссылок и создать правило для редиректа со страницы с 404 ошибкой на нормальную страницу.

  13. Режим отладки модуля: в режиме отладки редиректы производиться не будут.
    Вместо этого в шапке сайта администраторы будут видеть, какой редирект должен был сработать на текущей странице.

  14. Условия соответствия можно проверять на совпадение, содержание подстрок, и регулярные выражения.

Автоматичекий режим модуля

Ещё одной уникальной функцией модуля «Редиректор» является автоматический режим работы.

В автоматическом режиме «Редиректор» следит за изменением адресов страниц разделов и элементов инфоблоков при любых попытках изменения этих разделов и элементов.

Как именно действует модуль:

Что случилось?

Что делает модуль?

Изменился элемент

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

Изменился раздел

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

Удалён элемент

Будет создан редирект на раздел данного элемента

Удалён раздел

Будут созданы редиректы со всех внутренних подразделов и товаров на родительский раздел

Добавлен элемент

Если с данного адреса есть ранее созданный автоматический редирект на другой адрес, он будет отключён

Добавлен раздел

Если с данного адреса есть ранее созданный автоматический редирект на другой адрес, он будет отключён

Автоматический режим включается для каждого инфоблока отдельно и не требует дальнейшего участия администратора: при создании, редактировании и удалении разделов и элементов отслеживаемого инфоблока все операции с редиректами будут происходит автоматически.

Модуль поддерживает следующие коды редиректов:

  • 301 Moved Permanently — страница навсегда перемещена на новый адрес, кэшируется браузером

  • 302 Moved Temporarily — страница временно перемещена на новый адрес, кэшируется браузером

  • 303 See Other — результат можно найти по новому адресу, не кэшируется браузером

  • 307 Temporary Redirect — страница на короткое время перемещена на новый адрес, кэшируется браузером

  • 410 Gone — страница по данному адресу удалена

Обсуждения (34)

Обсуждения (34
)

Что нового

1.1.10 (06.12.2019) (beta) Добавлены кнопки для удаления всех записей в таблицах «404 ошибки» и «История переходов».
Добавлены фильтры «Откуда» и «Куда» в списке правил. Поиск работает по части фразы в названии полей «Откуда», «Куда».
1.1.9 (15.10.2019) Оптимизация запросов к базе данных.
1.1.6 (13.05.2019) Исправление ошибки, из-за которой, при определённых условиях не выполнялись редиректы.
1.1.5 (30.04.2019) Добавлена возможность удаления записей из лога ошибок.
Исправление ошибки из-за которой, при определённых условиях не определялся циклический редирект.
1.1.4 (20.12.2018) Исправление ошибки в истории переходов определенного правила
1.1.3 (11.09.2018) Исправлена работа глобальных редиректов. При определенных обстоятельствах не срабатывали.
1.1.2 (03.09.2018) Исправлена ошибка в определении циклического редиректа
1.1.1 (28.08.2018) Исправлена ошибочная обработка служебных символов при импорте.
1.1.0 (28.06.2018) Исправление ошибки, при которой глобальные правила выполнялись несколькими редиректами. Теперь это один редирект.
1.0.9 (30.05.2018) Исправлена ошибка определения пользовательской функции
1.0.8 (23.04.2018) В авторедиректах введена проверка типа редиректа при обновлении правила.
Введена проверка среды выполнения скрипта.
1.0.7 (04.04.2018) Исправлена ошибка очистки логов ошибок 404
1.0.6 (02.04.2018) Исправлена ошибка с действием «Ничего не делать». Выполнялся бесконечный редирект.

Авторедиректы. Вывод всех инфоблоков — fix

1.0.5 (28.02.2018) Исправлена ошибка при отображении списка бекапов.
Из бекапа исключены логи переходов.
1.0.4 (13.02.2018) Исправление ошибок, связанных с входными параметрами.
1.0.3 (12.02.2018) Увеличение быстродействия модуля за счет более быстрой обработки правил.
1.0.2 (16.01.2018) Проведена оптимизация SQL запросов.
1.0.1 (19.12.2017) Исправление ошибок в режиме «Авторедиректы».
Если включен режим «Композитный сайт», при добавлении/редактировании правила выводится напоминание о том, что нужно сбросить кеш.

Установка

Модуль устанавливается стандартным образом из маркетплейса. В главном меню панели управления Битрикса у вас появится новый значок (в самом низу меню):

Поддержка

Справочное руководство по модулю можно найти в самом модуле в разделе «Справка».

Если после прочтения справки часть ваших вопросов осталась без ответа, вы можете получить нашу помощь одним из следующих способов:

  1. Написать письмо на email [email protected] (отвечаем в течение 1-3 рабочих дней),
  2. Зарегистрироваться в личном кабинете на нашем сайте и задать вопрос там (отвечаем в течение 1 дня).

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

Лицензионное соглашение

Другие решения разработчика

marketplace.1c-bitrix.ru

Должен ли быть редирект 301 www с https или только с http в битрикс? — Хабр Q&A

я пиал тут
https://klondike-studio.ru/standards/standartnyy-h…

############################################################################
#### Стандартный .htaccess для проектов студии Клондайк, версия 4.6     ####
############################################################################
RewriteEngine On
   #  Директива включает редиректы.
RewriteBase / 
   # Без директивы (.*) = /$1 будет /var/wwww/site/web/$1  с директивой  = /$1
Options +FollowSymLinks
   # Разрешает переход по символическим ссылкам.
php_flag display_errors off
  # запретить отображение ошибок  (требование монитора качества)
php_flag allow_url_fopen off
  # запретить  использовать удаленные файлы (требование проактивной защиты)

############################################################################
#### Выбор основного зеркала (с www или без www)                        ####
############################################################################
    # 1. Удалить www
RewriteCond %{ENV:HTTPS} on
    #Если включен https
RewriteRule .* - [E=SSL:s]
    #То создаем переменную  ssl с текстом s
RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
    # Проверяем, содержит ли домен www в начале URL.
RewriteRule ^(.*)$ http%{ENV:SSL}://%1/$1 [R=301,L]
    # Перенаправляем удаляем www

    # 2. Добавить www
#RewriteCond %{ENV:HTTPS} on
    #Если включен https
#RewriteRule .* - [E=SSL:s]
    #То создаем переменную  ssl с текстом s
#RewriteCond %{HTTP_HOST} !^www.(.*) [NC]
    # Если нет www в начале домена
#RewriteRule ^(.*)$ http%{ENV:SSL}://www.%{HTTP_HOST}/$1 [R=301,L]
    #Подставляем www и https если он включен.

############################################################################
#### Перенаправляем протокол https на http                              ####
############################################################################
#RewriteCond %{HTTPS} on
   # Проверяем наличие https в URL.
#RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
   # Перенаправляем протокол на http.

############################################################################
#### Перенаправляем протокол http на https                              ####
############################################################################
RewriteCond %{HTTPS} off
   # Проверяем наличие https в URL.
RewriteCond %{REQUEST_URI} !^/bitrix/admin/1c_exchange.php$ [NC] 
   #  Исключим обмен с 1С, ему требуется только 200 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
   # Перенаправляем протокол на http.

############################################################################
#### Убираем index.php, если он есть в конце URL                        ####
############################################################################
RewriteCond %{REQUEST_URI} ^(.*)/index.php$
   # URL cодержит index.php в конце.
RewriteCond %{REQUEST_METHOD} =GET
   # Выявляем GET запрос в URL (не POST).
RewriteRule ^(.*)$ %1/ [R=301,L]
   # Удалить index.php из URL.

############################################################################
#### Убираем повторяющиеся слеши (/) в URL                              ####
############################################################################
RewriteCond %{THE_REQUEST} //
   # Проверяем, повторяется ли слеш (//) более двух раз.
RewriteCond %{QUERY_STRING} !http(s|)://
  # Убедимся что это не урл в  GET
RewriteRule .* /$0 [R=301,L]
   # Исключаем все лишние слеши.

############################################################################
#### Убираем слеши в конце URL для статических файлов (содержит точку)  ####
############################################################################
RewriteCond %{REQUEST_URI} ..+$
   # Если файл содержит точку.
RewriteCond %{REQUEST_FILENAME} !-d
   # И это не директория.
RewriteCond %{REQUEST_FILENAME} -f
   # Является файлом.
RewriteCond %{REQUEST_URI} ^(.+)/$
   # И в конце URL есть слеш.
RewriteRule ^(.+)/$ /$1 [R=301,L]
   # Исключить слеш.

############################################################################
#### Добавляем слеш(/), если его нет, и это не файл.                    ####
############################################################################
RewriteCond %{REQUEST_URI} !(.*)/$
   # Если слеша в конце нет.
RewriteCond %{REQUEST_FILENAME} !-f
   # Не является файлом.
RewriteCond %{REQUEST_URI} !..+$
   # В URL нет точки (файл).
RewriteCond %{REQUEST_URI} ^(.+)$
 # В URL есть хоть один символы
RewriteRule ^(.*)$ $1/ [L,R=301]
   # Добавляем слеш в конце.


############################################################################
#### Компрессия статического контента для гугл  спид тест               ####
############################################################################
<IfModule mod_deflate.c>
  AddType image/svg+xml .svg
  AddOutputFilterByType DEFLATE image/svg+xml  
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE font/opentype
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
<IfModule mod_expires.c>
  ExpiresActive on
  ExpiresByType image/jpeg "access plus 1 year"
  ExpiresByType image/svg "access plus 1 year"
  ExpiresByType image/gif "access plus 1 year"
  ExpiresByType image/png "access plus 1 year"
  ExpiresByType text/javascript "access plus 1 year"
  ExpiresByType text/css "access plus 1 year"
  ExpiresByType application/javascript "access plus 1 year"
  ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
  ExpiresByType application/x-font-ttf "access plus 1 year"
  ExpiresByType application/x-font-opentype "access plus 1 year"
  ExpiresByType application/x-font-woff "access plus 1 year"
  ExpiresByType image/svg+xml "access plus 1 year"
</IfModule>
  <IfModule mod_headers.c>
  <filesmatch ".(ico|flv|jpg|jpeg|webp|png|gif|css|swf|woff|pdf)$">
    Header set Cache-Control "max-age=31536000, public"
  </filesmatch>
  <filesmatch ".(html|htm)$">
    Header set Cache-Control "max-age=7200, private, must-revalidate"
  </filesmatch>
  <filesmatch ".(pdf)$">
    Header set Cache-Control "max-age=86400, public"
  </filesmatch>
  <filesmatch ".(js|otf|ttf|woff|woff2)$">
    Header set Cache-Control "max-age=31536000, private"
  </filesmatch>
  </IfModule>
############################################################################
#### Конец общей части, далее следует собственные директивы .htaccess   ####
############################################################################

qna.habr.com

Модуль редиректов для Битрикс — Редирект мастер

  • Почечикин Андрей

    Удобнее своих скриптов
    Оперативно помогли с настройкой. Было бы хорошо сделать колонку комментов к битым ссылкам. Чтобы в случае большого числа разных ошибок не держать все в голове и чтобы с модулем могли работать несколько человек. Это сэкономило бы время на объяснения..

  • Рычагов Сергей

    Использую модуль на 2-х сайтах
    Использую данный модуль на 2-х сайтах. Всё устраивает. Хотелось бы иметь следующие улучшения:
    1) Есть два пункта.
    — Битые ссылки
    — Битые ссылки (вся история)
    В «Битые ссылки (вся история)» в таблице выводится столбец «Переход с URL», а в просто «Битые ссылки», его нет, приходится нажимать «Посмотреть переходы». Когда смотришь переходы, то при возврате обратно уже применяется фильтр, который нужно сбрасывать — это очень неудобно, делаешь несколько лишних кликов.
    2) Если использовать это решение на нескольких сайтах, то хорошо бы сделать импорт-экспорт игнор-листа, так как он повторяется.

  • Фролов Сергей

    Не встречал более отзывчивых и честных компаний!!!
    Обратился за советом, а получил помимо…
    Ответов на мои вопросы, ещё и рекомендации по хостингу.
    В результате сделали все редиректы, которые не удалось настроить самостоятельно, работает модуль как заявлено.
    В общем я не то что давно, а вообще не встречал такого подхода к клиентам.
    Приятно удивлён поставил бы 10 звёзд если-быыли!!!

  • Калиниченко Валерий

    Хороший модуль
    Модуль установлен на сайт более 2 лет назад. С тех пор работает, все хорошо. Достаточно просто делается импорт списка редиректов когда нужно отработать много адресов. Одного модулю не хватает (для этого пришлось купить другой модуль) — автоматического создания редиректа при изменении символьного кода или перемещения элемента в другой раздел или инфоблок. 410 редирект так то тоже можно было сделать.
    Все что заявлено было у модуля работает.

  • atlant2010.ru

    Инструкция по устранению уязвимости перенаправлений в 1C-Битрикс: Управление сайтом

    Данная информация будет полезна государственным учреждениям, сайты которых проходили проверку на безопасность. Если ее итогом стало письмо, содержащее подобную формулировку: “По имеющейся информации официальный сайт ‘название учреждения’ содержит в себе уязвимость информационной безопасности, связанную с функцией перенаправления пользователей в системе управления сайтом “1С-Битрикс”. Указанная уязвимость может быть использована потенциальным нарушителем информационной безопасности…”, мы расскажем о чем идет речь, и что с этим делать.

    Под уязвимостью в данном случае понимают Open Redirect (открытые перенаправления) на вашем сайте. Если при редиректе пользователя не предупреждают о переходе, то сайт могут заподозрить в уязвимости к фишингу.

    Звучит страшно, но волноваться не нужно. Эта проблема связана с тем, что изначально в Битрикс отключена защита редиректов. Мы подготовили инструкцию, как за 5 минут ограничить возможность использования нежелательных перенаправлений.

    Чтобы все редиректы были защищены, вам нужно:

    1. Авторизоваться в административной части по адресу http://НАЗВАНИЕ_САЙТА/bitrix/ (вместо  НАЗВАНИЕ_САЙТА подставьте название вашего сайта), введя ваши логин и пароль.

    2. В левом меню перейти в раздел Настройки-Проактивная защита-Защита редиректов.

    3. Нажать кнопку «Включить защиту редиректов», если выводится сообщение «Защита редиректов от фишинга выключена». Если защита редиректов включена, пропускайте этот шаг.

    4. Перейти во вкладку «Параметры».

    5. В секции «Методы» выбрать все методы защиты от фишинга. Должны стоять галочки напротив следующих пунктов: «Проверять наличие HTTP-заголовка, описывающего ссылающуюся страницу», «HTTP-заголовок, описывающий ссылающуюся страницу, должен содержать текущий сайт» и «Добавлять цифровую подпись к перечисленным ниже URL».

    6. В секции «Действия» выбрать действие защиты от фишинга — «Показать сообщение о попытке перенаправления на другой сайт». Этот вариант не допустит несанкционированный и незаметный для пользователя редирект. Такое поведение соответствует рекомендациям OWASP, данным на сайте организации.

    7. Применить настройки, нажав кнопку «Сохранить».

    Готово! Теперь все редиректы на вашем сайте защищены и соответствуют требованиям безопасности.

    www.info-expert.ru

    1С-Битрикс — СЕО редирект

    Внимание!!! модуль использует возможности нового ядра D7, поэтому работать на ядре ниже 12 редакции не будет!

    Немного терминологии:
    «Редирект — это способ перенаправить пользователей и поисковых систем на другой URL отличный от того, который они первоначально запросили»

    В процессе работы СЕО специалисты очень часто используют механизм редиректа при создании новой структуры сайта или при переезде на другой домен или при переносе сайта на другой движок. Редирект можно создать несколькими способами, но для этого потребуются специфические знания синтаксиса и правил написания редиректов. Данный модуль значительно упрощает работу при создании редиректов любого объема, создавая новые возможности благодаря возможности использования дополнительных настроек! Удобная панель управления в административной части сайта с небольшим количеством параметров позволит в кратчайшие сроки создать любое количество редиректов.

    Редиректы добавляются/изменяются в списке, аналогично элементам инфоблоков, без написания какого-либо кода. Все необходимые параметры уже занесены в специальные списки, вам потребуется только их указать.

    Данный модуль просто незаменимый инструмент любого СЕО специалиста!

    Модуль позволяет:
    — активировать/деактивировать работу всего модуля одной галочкой!
    — активировать/деактивировать отдельные редиректы
    — устанавливать значение сортировки редиректов — редиректы у которых значение сортировки меньше обрабатываются раньше.
    — устанавливать сроки действия редиректов — возможно установить отдельно даты начала и окончания срабатывания редиректа.
    — поддержка мультсайтовости — возможно устанавливать редиректы отдельно для разных сайтов.
    — указывать тип сравнения адресной строки со строкой редиректа.
    — указывать статус редиректа
    — указывать тип редиректа
    — указывать комментарий для каждого редиректа
    — применять фильтры по основным параметрам в списке редиректов

    Типы редиректа:
    — на внутренний адрес URL — в поле «редирект на» указывается адрес без названия домена, возможно указание адреса как с начальным слешем, так и без него!
    — на внешний адрес URL — в поле «редирект на» указывается адрес с названием домена, обычно используется для перенаправление на другие сайты.
    — на 404 страницу — как такового редиректа не происходит, но по указаннаму адресу в поле «редирект с» будет отображаться 404 страница.

    Типы сравнения адреса:
    — Полное совпадение по URL — проверяется полное совпадение адреса, в том числе и GET параметров адресной строки!!!
    — Вхождение в URL — проверяется вхождение в наличие в URL указанной строки, т.е. все страницы, в которых присутствует данная адресная строка, в том числе и GET параметры, будут перенаправлены.
    — Полное совпадение по Page URL — проверяется совпадение по адресу страницы
    — Полное совпадение по Directory URL — проверяется совпадение по адресу директории
    — Вхождение в Directory URL — проверяется вхождение в директорию, т.е. все внутренние страницы будут перенаправлены.

    Поддерживает различные статусы редиректов:
    — 300: Multiple Choices — несколько вариантов на выбор
    — 301: Moved Permanently — Перемещено навсегда
    — 302: Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0) — Найдено / Перемещено временно
    — 303: See Other — Затребованный ресурс можно найти по др. адресу
    — 304: Not Modified — Содержимое не изменялось
    — 305: Use Proxy — Доступ должен осуществляться через прокси
    — 306: Unused — Не используется
    — 307: Moved Temporarily (HTTP 1.1 Only) — Перемещено временно

    А так-же позволяет создавать отображение на любых существующих страницах код ответа:
    — 404: Not found — Страница не найдена

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

    Более подробная информация о возможностях модуля и непосредственно демонстрациия работы модуля тут:
    http://seoredirect.kreattika.ru/

    marketplace.1c-bitrix.ru

    Работа с URL-адресами в Bitrix является одним из важных моментов в работе всей системы. До появления ядра версии D7 работа с URL адресами производилась посредством классов CMain::GetCurPageParam и DeleteParam. На нашем сайте ранее публиковались примеры формирования URL с передачей многомерных массивов, а также произвольных URL посредством использования GetCurPageParam.
    В D7 для работы с ссылками появился аналог этим классам – Uri. Работа с классом в некоторых моментах стала сложнее, т.к. каждый аспект работы класса стал более самостоятельным, реализованным в отдельных методах.

    Класс Uri в Bitrix D7

    BitrixMainWebUri
    

    Примеры работы c классом Uri

    В представлении класса Uri в системе Bitrix каждый URL является объектом, с параметрами которого класс и работает посредством отдельных методов. Поэтому в перед тем как работать с URL необходимо инициализировать объект класса Uri.

    Создание объекта из URL строки

    Создать объект класса Uri мы можем из обычной строки URL, после чего уже работать с этим объектом.

    $uri = new BitrixMainWebUri('/script.php?param1=value1&param2=value2');
    

    Создание объекта из текущего URL

    Довольно часто приходится работать с параметрами URL текущей страницы. Для работы с URL текущей страницы аналогично необходимо создать объект класса Uri. Получить текущий URL, и создать объект класса для работы с ним можно таким образом:

    $request = BitrixMainApplication::getInstance()->getContext()->getRequest();
    $uri = new BitrixMainWebUri($request->getRequestUri());
    

    После того как создан объект класса Uri, мы можем работать с методами класса. Так к примеру, мы можем получить составляющие части сайта.

    // получить URL из объекта класса
    $url = $uri->getUri();
    
    // метод возвращает путь
    $path = $uri->getPath();
    
    // строка запроса (метод вернёт параметры строки запроса)
    $query = $uri->getQuery();
    
    // так можно разбить параметры строки запроса в массив $arUrlParams
    parse_str($uri->getQuery(), $arUrlParams);
    
    // метод возвращает номер порта запроса, например 80 или 443
    $port = $uri->getPort();
    
    // протокол запроса, к примеру http или https
    $scheme = $uri->getScheme();
    
    // метод возвращает путь с запросом
    $pathQuery = $uri->getPathQuery();
    
    // имя хоста из запроса, например example.com
    $host = $uri->getHost();
    
    // получение фрагмента URL, (параметры после знака #)
    $fragment = $uri->getFragment();
    

    Методы класса Uri

    Таблица доступных методов в данный момент времени:

    Метод Описание С версии
    addParams Метод добавляет параметры в запрос или заменяет существующие параметры. 15.5.10
    deleteParams Метод удаляет параметры из запроса. 15.5.10
    getFragment Метод возвращает фрагмент. 14.0.15
    getHost Метод возвращает хост. 14.0.15
    getLocator Метод возвращает URI без фрагмента. 15.5.10
    getPass Метод возвращает пароль. 14.0.15
    getPath Метод возвращает путь. 14.0.15
    getPathQuery Метод возвращает путь с запросом. 14.0.15
    getPort Метод возвращает номер порта. 14.0.15
    getQuery Метод возвращает запрос 14.0.15
    getScheme Метод возвращает схему. 14.0.15
    getUri Метод возвращает URI с фрагментом, если он имеется. 15.5.10
    getUser Метод возвращает пользователя. 14.0.15
    setHost Метод устанавливает хост 14.0.15
    setPath Метод устанавливает путь. 15.5.10
    setUser Метод устанавливает пользователя. 16.5.7
    setPass Метод устанавливает пароль. 16.5.7

    Изменение параметров в URL

    Методы класса Uri позволяют так же добавлять параметры в существующий URL, а также менять различные составляющие URL-адреса.

    // задаём новый путь для URL
    $uri->setPath("/new-path/to/page.php"); 
    
    // задаём порт
    $uri->setPort(80);
    
    // задаём протокол для URL
    $uri->setScheme("https");
    
    // задаём имя хоста
    $uri->setHost("example.com");
    
    // задаём фрагменты для URL (анкоры для ссылок, после знака - #)
    $uri->setFragment("anchor");
    
    // добавление параметров
    $uri->addParams(array("param1"=>"value1","param2"=>"value2"));
    
    // удаление параметров
    $uri->deleteParams(array("param1"=>"value1","param2"=>"value2"));
    
    // удаление системных параметров
    $uri->deleteParams(BitrixMainHttpRequest::getSystemParameters());
    

    Таким образом, можно довольно гибко оперировать данными URL в различных участках кода. К примеру, это может потребоваться тогда, когда необходимо сформировать URL-адреса для списка ссылок в шаблоне компонента. Класс будет работать везде где подключается ядро, Bitrix-а, поэтому его можно использовать как в компонентах, так и в отдельных скриптах-обработчиках, к примеру, в ajax.

    Понравилась статья? Поделить с друзьями:

    Читайте также:

  • Битрикс the script encountered an error and will be aborted
  • Битрикс sphinx connect error ошибка подключения
  • Битрикс mysql query error 2006 mysql server has gone away 400
  • Битрикс mysql query error 1271 illegal mix of collations for operation union 400
  • Битрикс error log

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии