как настроить переадресацию и проверить результат — Топвизор–Журнал
Содержание
Поисковики воспринимают www.site.ru и site.ru как разные сайты, находящиеся на разных доменах. Это может быть плохо по двум причинам:
Происходит деление ссылочного веса. Часть внешних ссылок на ваш сайт с префиксом www, часть — без. Если перенаправление не настроено, Page Rank (PR) и тематический индекс цитирования (ТИЦ) будут распределяться между разными версиями сайта.
Одно из зеркал сайта считается дублем. Например, если поисковый робот заходит сначала на 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.
Когда интернет только появился, адреса большинства сайтов начинались с www (World Wide Web) или другого префикса, для того чтобы различать разные серверы одной сети. Так, www обозначал хранение файлов для обмена в интернете, mail — работу электронной почты, ftp — обмен данными в сети.
Сейчас интернет работает немного иначе. Один сервер с одним IP‑адресом может служить разным целям: и хранить файлы, и доставлять электронные письма. Поэтому необходимость в www отпала, и многие браузеры (например, мобильный Safari) уже не показывают этот префикс в адресной строке. Он появляется, только если целенаправленно нажать на ссылку:
Пользователи тоже чаще всего набирают адрес сайта без www — так удобнее и быстрее.
Для поискового продвижения нет разницы между сайтом с www и без www. Главное — остановиться на одной версии и придерживаться ее.
Как настроить редирект
Через htaccess
Htaccess‑файл — конфигурационный файл вашего сайта; он находится в корневой директории сервера (нужно получить к нему доступ) и позволяет управлять его работой.
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‑редирект и покажет данные о его состоянии в разделе «Сводка»:
А в разделе «Страницы» отображаются все страницы сайта и их коды ответа:
Коды ответа всех страниц сайта в «Анализе сайта» ТопвизораФиолетовым сервис выделит страницы, для которых настроен 301‑й редирект.
❗️ Мы обновили дизайн инструмента «Анализ сайта» и открыли его для альфа‑теста. Теперь аудит стал нагляднее, проще и функциональнее: ищите редиректы и битые ссылки, проверяйте индексируемость, атрибуты и теги.
Чтобы первыми получить доступ к новой версии «Анализа сайта», напишите свой ID в комментариях.
Кроме этого, статус страницы можно увидеть через Яндекс Вебмастер. Введите страницу, которую хотите проверить, в «Проверку ответа сервера»:
Если со страницы настроен редирект, её код ответа будет 301.
Кстати, в Вебмастере редирект можно не только проверить, но и настроить: для этого перейдите в «Индексирование» — «Переезд сайта».
Также проверить редирект можно с помощью онлайн‑сервиса Redirect Checker. Введите ссылку и нажмите analyse — если всё хорошо, появится надпись Everything seems to be fine.
Что запомнить
Сайт с www и без www — два разных сайта для поисковиков. Лучше всего выбрать какую‑то одну версию. Пользователи привыкли к формату без www, поэтому можно остановиться на нём.
Склеить два зеркала сайта навсегда можно с помощью 301‑го редиректа — он объединит PR и ТИЦ. Делается это с помощью внесения изменений в файл .htaccess или через плагины для CMS, на которой сделан сайт.
Проверить, что редирект работает, можно вручную: через Анализ сайта от Топвизора, сервис 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
- Ввод данных
- Настройка front-end сервера с nginx
- Настройка 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.