Редирект 301 битрикс: Настройка 301-редиректа в Битрикс — корректировка файла htaccess

как настроить переадресацию и проверить результат — Топвизор–Журнал

Содержание

  • Что такое редирект 301 и зачем он нужен
  • Какой тип URL выбрать основным
  • Как настроить редирект
  • Через htaccess
  • Через обычный интерфейс
  • Как проверить, что редирект работает
  • Что запомнить
  • Ещё по теме
  • Поисковики воспринимают www.site.ru и site.ru как разные сайты, находящиеся на разных доменах. Это может быть плохо по двум причинам:

    1. Происходит деление ссылочного веса. Часть внешних ссылок на ваш сайт с префиксом www, часть — без. Если перенаправление не настроено, Page Rank (PR) и тематический индекс цитирования (ТИЦ) будут распределяться между разными версиями сайта.

    2. Одно из зеркал сайта считается дублем. Например, если поисковый робот заходит сначала на www.site.ru, а потом на site.ru, последний может расцениваться им как дубль и понижаться в выдаче.

    Чтобы этого избежать, нужно настроить редирект со страниц одного типа на страницы другого типа. В статье рассказываем, как это сделать, на примере редиректа с www на URL без www; но инструкция работает и в обратную сторону.

    Что такое редирект 301 и зачем он нужен

    301‑й редирект — это постоянное перенаправление с одной страницы на другую. Когда страница навсегда перемещена с одного URL на другой, она отдает код ответа 301 Moved Permanently.

    Человек этого не увидит — его сразу перекинет на нужную страницу. Но статус 301 можно увидеть, открыв исходный код страницы через инструменты разработчика — Яндекс Вебмастер или Google Search Console.

    Как посмотреть исходный код страницы

    301‑й редирект помогает склеить разные версии страницы — с www и без www — между собой. Таким образом, они не будут считаться дублями, а PR и ТИЦ этих страниц объединятся.

    Какой тип URL выбрать основным

    Сначала разберёмся, как лучше — перевести все страницы на вариант с префиксом www или, наоборот, с site.

    ru на www.site.ru.

    Когда интернет только появился, адреса большинства сайтов начинались с www (World Wide Web) или другого префикса, для того чтобы различать разные серверы одной сети. Так, www обозначал хранение файлов для обмена в интернете, mail — работу электронной почты, ftp — обмен данными в сети.

    Сейчас интернет работает немного иначе. Один сервер с одним IP‑адресом может служить разным целям: и хранить файлы, и доставлять электронные письма. Поэтому необходимость в www отпала, и многие браузеры (например, мобильный Safari) уже не показывают этот префикс в адресной строке. Он появляется, только если целенаправленно нажать на ссылку:

    Пользователи тоже чаще всего набирают адрес сайта без www — так удобнее и быстрее.

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

    Как настроить редирект

    Через htaccess

    Htaccess‑файл — конфигурационный файл вашего сайта; он находится в корневой директории сервера (нужно получить к нему доступ) и позволяет управлять его работой.

    (.*)$ http://site.ru/$1 [R=301,L]

    RewriteRule включает механизм редиректа. Вместо site.ru вставьте ваш сайт.

    Через обычный интерфейс

    Какой‑то общей схемы настройки 301‑го редиректа для всех сайтов, кроме как через htaccess, нет. В зависимости от того, на какой CMS сделан ваш сайт, инструменты и механизмы могут различаться.

    В 1C‑Bitrix, например, редирект настраивается с помощью плагина «Редиректы для SEO».

    Настройка редиректа с www на без www в 1C‑Bitrix

    Для Wordpress используется плагин Redirection.

    Как проверить, что редирект работает

    Самый простой способ — посмотреть прямо в поиске. Введите в поиск адрес страницы, с которой вы настраивали перенаправление, и перейдите по ссылке. Вас должно перекинуть на ту страницу, куда вы настроили редирект.

    Открыв инструменты разработчика (Ctrl + Shift + I для Windows и Cmd + Shift + I на macOS), вы увидите, что код состояния этой страницы — 301 Moved Permanently.

    Проверить работу редиректа можно с помощью «Анализа сайта» от Топвизора. Сервис отдельно проанализирует именно www‑редирект и покажет данные о его состоянии в разделе «Сводка»:

    Проверка редиректа с www в «Анализе сайта» Топвизора

    А в разделе «Страницы» отображаются все страницы сайта и их коды ответа:

    Коды ответа всех страниц сайта в «Анализе сайта» Топвизора

    Фиолетовым сервис выделит страницы, для которых настроен 301‑й редирект.

    ❗️ Мы обновили дизайн инструмента «Анализ сайта» и открыли его для альфа‑теста. Теперь аудит стал нагляднее, проще и функциональнее: ищите редиректы и битые ссылки, проверяйте индексируемость, атрибуты и теги.

    Чтобы первыми получить доступ к новой версии «Анализа сайта», напишите свой ID в комментариях.

    Кроме этого, статус страницы можно увидеть через Яндекс Вебмастер. Введите страницу, которую хотите проверить, в «Проверку ответа сервера»:

    Если со страницы настроен редирект, её код ответа будет 301.

    Кстати, в Вебмастере редирект можно не только проверить, но и настроить: для этого перейдите в «Индексирование» — «Переезд сайта».

    Также проверить редирект можно с помощью онлайн‑сервиса Redirect Checker. Введите ссылку и нажмите analyse — если всё хорошо, появится надпись Everything seems to be fine.

    Что запомнить

    1. Сайт с www и без www — два разных сайта для поисковиков. Лучше всего выбрать какую‑то одну версию. Пользователи привыкли к формату без www, поэтому можно остановиться на нём.

    2. Склеить два зеркала сайта навсегда можно с помощью 301‑го редиректа — он объединит PR и ТИЦ. Делается это с помощью внесения изменений в файл .htaccess или через плагины для CMS, на которой сделан сайт.

    3. Проверить, что редирект работает, можно вручную: через Анализ сайта от Топвизора, сервис Redirect Checker или через панели веб‑мастеров.

    Ещё по теме

    Коды ошибок HTTP: полный список ошибок сервера

    Есть ли смысл настраивать редирект со страницы с ошибкой 404

    Ставить завершающий слеш в URL или нет: как лучше для SEO

    url — строгое перенаправление NGINX

    У меня есть URL:

     https://www. example.com/catalog
     

    Я хочу получить к нему доступ через:

     https://www.example.com/products
     

    Если я перенаправляю этот URL-адрес, то при попытке перейти по URL-адресу:

     https://www.example.com/products/bicycle
    https://www.example.com/products/car
    https://www.example.com/products/tshirt
    и т. д..
     

    Это возвращает меня:

     https://www.example.com/products
     

    /каталог\$ /продукция постоянная; }

    Он перенаправляет меня из /товаров/ в /каталог/, как я и хотел. Но если я перехожу на другой url /products/car /products/tshirt/ /products/bicycle и тому подобное, то меня тоже перекидывает на /catalog, но мне это не нужно. Помоги мне, пожалуйста.

    Мой файл конфигурации:

     сервер {
            имя_сервера sub.url.ru;
            корень /home/suburl/public_html/;
            индекс index.php;
            лог_доступа /home/sportmen/sportmen.ru/logs/access.log;
            error_log /home/sportmen/sportmen. (.*)/index.(html|php)) { return 301 $1/$is_args$args; }
            location / { try_files $uri $uri/ /bitrix/urlrewrite.php$is_args$args; }
            расположение ~* @.*\.html$ { внутреннее; }
            включить /etc/nginx/vhosts-includes/suburl/redirect.conf;
            слушать 443 ssl; # под управлением Certbot
            ssl_certificate /etc/letsencrypt/live/suburl/fullchain.pem; # под управлением Certbot
            ssl_certificate_key /etc/letsencrypt/live/suburl/privkey.pem; # под управлением Certbot
            включить /etc/letsencrypt/options-ssl-nginx.conf; # под управлением Certbot
            ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # под управлением Certbot
    ###phpMyadmin###
            местоположение /phpmy123 {
            псевдоним /usr/share/phpmyadmin;
            расположение ~ \.php$ {
            fastcgi_pass unix:/run/php/php7.4-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $request_filename;
            включить fastcgi_params;
            fastcgi_ignore_client_abort выключено;
            }
            расположение ~* \.
    (js|css|png|jpg|jpeg|gif|ico)$ { доступ_лог выключен; log_not_found выключен; истекает 1M; } } расположение ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; включить fastcgi_params; } } ###конец-phpMyAdmin### сервер { если ($host = sub.url.ru) { вернуть 301 https://$host$request_uri; } # управляется Certbot слушать 80; имя_сервера sub.url.ru; вернуть 404; # под управлением Certbot
    • nginx
    • URL-адрес
    • перенаправление
     местоположение /продукты/ {
        вернуть 301 /каталог/;
    }
     

    Здесь /product/ интерпретируется как префикс. Чтобы nginx интерпретировал это как точное совпадение, вам нужно использовать модификатор, например. = :

     местоположение = /продукты/ {
        вернуть 301 /каталог/;
    }
     

    Здесь /product/bicycle

    больше не подходит для этого местоположения.

    См. другие модификаторы местоположения здесь: https://docs.nginx.com/nginx/admin-guide/web-server/web-server/#locations

    1

    Зарегистрируйтесь или войдите в систему

    Зарегистрируйтесь с помощью Google

    Зарегистрироваться через Facebook

    Зарегистрируйтесь, используя электронную почту и пароль

    Опубликовать как гость

    Электронная почта

    Требуется, но не отображается

    Опубликовать как гость

    Электронная почта

    Требуется, но не отображается

    Битрикс24 за прокси — Pocket Admin

    от Admin

    1. Ввод данных
    2. Настройка front-end сервера с nginx
    3. Настройка back-end сервера/битрикса

    Ввод данных

    Возникла необходимость разместить коробочную версию Битрикс24 за прокси сервером на nginx. И так что у нас есть:

    192.168.88.20 — ip сервера с nginx, для которого есть А-запись с доменным именем bx24.corp . Сервер прослушивает стандартные порты 80 и 443 .
    192.168.88.24 — ip бокса версии битрикс24, который доступен на порт 80 .

    Конфигурация внешнего сервера с nginx

    Создать отдельный файл для конфигурации /etc/nginx/conf.d/bx.conf :

     server {
        слушать 80;
        имя_сервера bx24.corp;
        вернуть 301 https://bx24.corp$request_uri;
    }
    сервер {
    слушать 443 ssl;
            имя_сервера bx24.corp;
            SSL включен;
            ssl_certificate /etc/pki/tls/certs/bx.crt;
            ssl_certificate_key /etc/pki/tls/private/bx.key;
            ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
            ssl_prefer_server_ciphers включен;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    расположение / {
    прокси_пароль http://192.168.88.24:80;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            }
    } 

    В первом блоке server делаем редирект с http на https : принимаем запросы на 80 порт на bx24. corp и перенаправляем на 443 порт.

    Во втором блоке server указываем настройки для bx24.corp: 443 . Здесь нужно указать сертификат и закрытый ключ для доменного имени: ssl_certificate и ssl_certificate_key .

    В location в proxy_pass указан back-end сервер, в нашем случае это bitrix. Параметр proxy_set_header необходим для передачи реальных IP-адресов посетителей.

    Для применения новых настроек говорим nginx перечитать конфигурационные файлы:

     service nginx reload 

    Конфигурация back-end сервера/битрикса за прокси

    Открыть конфигурационный файл nginx для битрикса. По умолчанию это /etc/nginx/bx/site_avaliable/s1.conf :

     # Веб-сайт по умолчанию
     сервер {
     слушать 80 default_server;
     имя сервера _;
     server_name_in_redirect выключен;
    журнал_доступа /var/log/nginx/access.

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

    Ваш адрес email не будет опубликован. Обязательные поля помечены *