Редирект с www на без www (https > http)
Модератор SeVlad(@sevlad)
wp.me/3YHjQ
Вчера целый день пытался вставлять разные примеры и гуглить, но редирект либо не работает, либо пишет что site.su выполнил переадресацию слишком много раз.
Не ставьте «с www на без www», а просто правильно настройте адреса сайта в админке.
То есть достаточно сделать так?
https://i.imgur.com/p5k3XHc.png (я тут указал адрес без www)
И не требуется отдельно делать редирект с https на http?
Модератор SeVlad(@sevlad)
wp.me/3YHjQ
То есть достаточно сделать так?
https://i.imgur.com/p5k3XHc.png (я тут указал адрес без www)
Да.
Но на всякий случай убедитесь, что ещё на сервере «с www» и «без www» являются зеркалами/алиасами. Т.е. указывают на один и тот же физ. каталог. Обычно так и есть, но перепроверь не помешает.
И не требуется отдельно делать редирект с https на http?
А этот редирект стоит сделать если не хотите чтобы сайт был доступен И по https (по двум протоколам).
Хостинг с СПанелью сделал подарок?
Да, подарили бесплатный сертификат, но не вижу смысла им пользоваться для моего сайта.
Сейчас проверил в redirectdetective вроде все комбинации перенаправляет по 301 редиректу на тот адрес, что мне нужно.
Но на всякий случай убедитесь, что ещё на сервере «с www» и «без www» являются зеркалами/алиасами. Т.е. указывают на один и тот же физ. каталог. Обычно так и есть, но перепроверь не помешает.
Вот тут не понял немного. На хостинге стоит ispmanager, не подскажите что там нужно проверить?
O(@perdyllo)
Вот тут не понял немного.
https://yandex.ru/support/webmaster/yandex-indexing/site-mirrors.html
А, в таком случае все нормально, судя по редиректам. Большое спасибо за помощь.
Модератор SeVlad(@sevlad)
wp.me/3YHjQ
На хостинге стоит ispmanager, не подскажите что там нужно проверить?
В панели в настройках www-домена поле с доп. доменами. Там ISP по умолчанию подставляет домен с www.
https://i.imgur.com/Auznxoq.png
И там же ниже отключить SSL и никаких редиректов делать не придётся.
redirect — 301 редирект с www на без www и с *.ru на *.com htaccess
Stack Overflow на русскомLoading…
- 0
- +0
- Тур Начните с этой страницы, чтобы быстро ознакомиться с сайтом
- Справка Подробные ответы на любые возможные вопросы
- Мета Обсудить принципы работы и политику сайта
- О нас Узнать больше о компании Stack Overflow
- Бизнес Узнать больше о поиске разработчиков или рекламе на сайте
Переадресация сайта с www и без www
Издревле ломают голову сеошники над вопросом. Вопрос ставиться по-гамлетовски : с www или без www? «Быть или не быть, вот в чем вопрос».
Быть или не быть WWW?
Если речь идет о сайте без какой либо «истории», то рекомендую выбирать вариант без «WWW». Во-первых, это анахронизм. Во-вторых, этот префикс не несет для SEO смысловой нагрузки, а все лишнее принято отсекать. В-третьих, технически, домен с www — это домен 3-го уровня. А уровень домена может быть фактором ранжирования. В случае с «www» — это сомнительно, но кто ж глядел в эти алгоритмы поисковых систем?
Тем не менее, псевдоним сайта с www нужно настроить, чтобы сайт мог быть открыт и по этому адресу.
Для сайтов с историей, лучше не «дергаться» и остановиться на той версии домена, которая была выбрана поисковыми системами как основная.
Если вы уже определились с версий домена (быть или не быть www в названии вашего сайта), то можно переходить к следующему этапу.
Переадресация с www и обратно на Apache
Чтобы исправить запросы к сайту, идущие по «неправильному» пути, используйте переадресацию.
Управление переадресацией можно сделать как программно, так и используя настройки сервера. Если ваш сервер — Apache, то:
Во-первых, нам понадобится модуль Apache mod_rewrite. Убедитесь, что он подключен и работает.
Во-вторых, мы внесем изменения в файл .htaccess в корне сайта.
Если вам нужен редирект с ВашДомен.Ру на www.ВашДомен.Ру:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^ВашДомен\.Ру RewriteRule (.*) http://www.ВашДомен.Ру/$1 [R=301,L] </IfModule>
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^ВашДомен\.Ру RewriteRule (.*) http://www.ВашДомен.Ру/$1 [R=301,L] </IfModule> |
Обратный случай (c www на без www):
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www\.ВашДомен\.Ру RewriteRule (.*) http://ВашДомен.Ру/$1 [R=301,L] </IfModule>
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www\.ВашДомен\.Ру RewriteRule (.*) http://ВашДомен.Ру/$1 [R=301,L] </IfModule> |
Учтите, что .htaccess может уже содержать секцию rewrite, тогда добавьте недостающие строки после
Переадресация с www и обратно на NGINX
Если ваш web-сервер основан на nginx, пороемся в конфигах. Нужный файл ищите где то тут (для unix-like hosting):
или для мультисайтового хостинга что то вроде:
/etc/nginx/site-available/ВашДомен.conf
/etc/nginx/site-available/ВашДомен.conf |
В этом файле нужно будет добавить секцию перед другими секциями server:
Случай редиректа с ВашДомен.Ру на www.ВашДомен.Ру:
server { server_name ВашДомен.Ру; return 301 $scheme://www.ВашДомен.Ру$request_uri; }
server { server_name ВашДомен.Ру; return 301 $scheme://www.ВашДомен.Ру$request_uri; } |
Обратный случай
server { server_name www.ВашДомен.Ру; return 301 $scheme://ВашДомен.Ру$request_uri; }
server { server_name www.ВашДомен.Ру; return 301 $scheme://ВашДомен.Ру$request_uri; } |
Нужна ли переадресация?
Формально — она не нужна. Т.к. поисковые системы рано или поздно сопоставят 2+2 и обнаружат что ВашСайт.Ру и www.ВашСайт.Ру — одно и тоже.
Для этого желательно настроить главное зеркало сайта в файле robots.txt. Не лишнем будет и формирование канонической ссылки. Этого будет достаточно, чтобы ПС-ы правильно вас проиндексировали (c www или без www).
В некоторых случаях переадресация ускоряет переиндексацию сайта, т.к. вы явно указываете роботу, что старая страница теперь вот тут. Это также «мешает» пользователю делиться «неправильными» ссылками на ваш сайт.