Перейти к содержимому
EVI Solutions

Перенаправление www и https: как заставить сайт работать на одном адресе

Средне 30 мин Обновлено:

Краткий ответ

Чтобы сайт работал на одном адресе, нужно выбрать каноническую версию (например, https://www.example.com) и все остальные варианты (http, без www) постоянно перенаправлять на неё с помощью 301 редиректа. Чаще всего это делается на уровне хостинга или в файле `.htaccess`, после чего проверяется, что все варианты правильно перенаправляются.

Как проявляется проблема

  • Сайт открывается и на www, и на адресе без www с одинаковым содержимым
  • http версия сайта не перенаправляется на https
  • Google показывает разные версии URL в результатах поиска
  • При вводе адреса без www сайт загружается, но в адресной строке ничего не меняется
  • В Google Search Console или Analytics есть дублирующиеся записи

Частые причины

Не настроено перенаправление

Хостинг или сервер не сконфигурирован для перенаправления одной версии на другую, поэтому обе загружаются независимо.

Неправильно настроен SSL-сертификат

Сертификат выдан только для одного варианта (например, без www), поэтому другой не загружается по https или выдаёт ошибку.

Несколько A-записей или CNAME-записей

DNS-записи указывают на разные серверы или IP-адреса, поэтому сайт ведёт себя непоследовательно в зависимости от кеша.

CMS или плагин навязывает другой адрес

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

Кеш браузера или CDN

Старые 301 или 302 записи остаются в кеше, поэтому кажется, что перенаправление не работает, хотя на сервере всё правильно.

Пошаговое решение

  1. 1

    Выберите канонический адрес

    Решите, будет ли сайт официально на https://www.example.com или https://example.com. Рекомендуется использовать https версию, а www или без www, дело привычки; главное, чтобы было единообразно. Запишите выбор, так как он будет использоваться на всех следующих шагах.

  2. 2

    Проверьте текущее состояние

    Откройте все четыре комбинации: http://example.com, http://www.example.com, https://example.com и https://www.example.com. Запишите, какие загружаются напрямую, какие показывают ошибку и меняется ли адрес в браузере. Это покажет, что уже настроено.

  3. 3

    Настройте перенаправление на панели хостинга

    В cPanel или аналогичной панели найдите опцию перенаправления (Redirects). Выберите источник (например, example.com) и назначение (https://www.example.com), тип 301 (постоянное). Если хостинг предлагает автоматическое принудительное использование https, включите и эту опцию. Подождите несколько минут и проверьте.

  4. 4

    Или добавьте правила в .htaccess

    Если у вас нет панели или вы хотите более точного контроля, сделайте копию файла .htaccess перед изменением. В корне сайта откройте .htaccess и добавьте правила для перенаправления http на https и без www на www (или наоборот). Пример для www и https: RewriteEngine On, RewriteCond %{HTTPS} off [OR], RewriteCond %{HTTP_HOST} !^www\. [NC], RewriteRule ^ https://www.example.com%{REQUEST_URI} [L,R=301]. Сохраните файл и протестируйте.

  5. 5

    Проверьте, совпадает ли адрес в WordPress

    В WordPress перейдите в Настройки > Общие и проверьте, совпадают ли Адрес WordPress (URL) и Адрес сайта (URL) с каноническим адресом. Если нет, перед изменением сделайте резервную копию базы данных и файлов, затем исправьте. Также проверьте, не навязывает ли какой-либо плагин безопасности или кеширования другое перенаправление.

  6. 6

    Очистите кеш

    Очистите кеш браузера (в Windows/Linux нажмите Ctrl+Shift+Delete, в macOS Command+Shift+Delete), кеш CDN, если используете, и кеш плагинов на сайте. Затем снова откройте все четыре варианта в приватном режиме браузера. Адрес в адресной строке должен измениться на канонический.

  7. 7

    Проверьте коды состояния

    Используйте инструмент проверки HTTP-заголовков (например, онлайн HTTP header checker) или командную строку curl -I http://example.com. Ответ должен быть 301 Moved Permanently с указанием местоположения канонического адреса. Повторите для всех вариантов.

  8. 8

    Обновите Google Search Console

    В Google Search Console добавьте новый канонический адрес как ресурс (если ещё не добавлен). Затем отправьте новый sitemap и запросите индексирование ключевых страниц. Google не использует отдельную настройку «предпочитаемого» адреса, а принимает канонический адрес на основе 301 перенаправлений и canonical-тегов. Старые варианты со временем исчезнут из индекса.

  9. 9

    Проверьте отсутствие циклического перенаправления

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

Если ничего не помогает: проверка на уровне сервера и CDN

Если вы испробовали все шаги, а перенаправление всё ещё не работает, проблема может быть в конфигурации сервера (nginx, Apache virtual host) или CDN-сервиса (Cloudflare и подобные). В этом случае обратитесь в поддержку хостинга и укажите точно, какие варианты адресов ведут себя неправильно. Если используете Cloudflare, проверьте, включена ли опция «Always Use HTTPS» и есть ли правила Cloudflare (Page Rules или новые Rules), которые меняют поведение. Также проверьте, нет ли нескольких A-записей для домена, указывающих на разные серверы; это может вызвать непоследовательное перенаправление. Для продвинутых пользователей проверка логов доступа может показать, доходят ли запросы до сервера или теряются на CDN.

Как избежать повторения

  • Регулярно проверяйте, открывается ли сайт по всем вариантам адреса и перенаправляются ли они.
  • После каждого изменения DNS или хостинга тестируйте перенаправление в приватном режиме браузера.
  • Используйте инструмент мониторинга доступности сайта, который уведомит вас, если появится ошибка или неперенаправленный вариант.
  • Запишите канонический адрес и придерживайтесь его во всех маркетинговых материалах и социальных сетях.

Когда лучше обратиться к специалисту

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

Создание сайтов · Быстрые, SEO-оптимизированные многоязычные сайты

Частые вопросы

Что лучше использовать: www или без www?

Оба варианта технически правильны. Важно выбрать один и последовательно его использовать. Многие предпочитают www, так как легче разделять поддомены, но это не обязательно.

Сколько времени нужно, чтобы Google принял новый адрес?

Обычно от нескольких дней до нескольких недель, в зависимости от размера сайта и частоты индексирования. Регулярно проверяйте Search Console и терпеливо ждите.

Влияет ли 301 перенаправление на SEO?

Правильное 301 перенаправление передаёт большую часть SEO-ценности на новый адрес и предотвращает дублирование контента. Поэтому важно, чтобы оно было постоянным (301), а не временным (302).

Поделиться
Не нашли решение?ИИ-помощник работает 24/7. Опишите проблему или отправьте скриншот ошибки и получите инструкцию для вашего случая.Спросить ИИ-помощника