СЕО-вопрос по протоколам http и https. Как сделать так, чтобы сайты отображались по двум протоколам?

Друзья, подскажите, пожалуйста, ответ на следующий вопрос, касаемо установки сертификата https:
Как сделать так, чтобы сайт открывался по двум протоколам? Сейчас, если открывать сайт по http, идет переадресация на https, а если отключить переадресацию в браузере, то открывается страница хостинга(остается http-версия протокола).
Проверяю сайт через http://pr-cy.ru/a/мойсайт - в показателях сайта везде по нулям(данный сервис, похоже, не редиректится, если на сайте стоит редирект на другой домен, и не отображает показатели нового домена). + отображается страница хостинга на скриншоте. Проверяю pr-cy.ru/a/vk.com - все отображается отлично, указаны все показатели https-протокола.
Мне нужно, чтобы сайт отображался исправно по двум протоколам с последующим редиректом на https..

Буду очень благодарен вам за подсказки по решению данной проблемы. Заранее спасибо.
  • Вопрос задан
  • 1505 просмотров
Пригласить эксперта
Ответы на вопрос 2
zooks
@zooks
Frontend и Django
Нужно убрать редирект в htaccess, если он есть. По остальным вопросам связаться с хостером.

Обычно он выглядит так:
RewriteEngine On
RewriteBase /

RewriteCond %{SERVER_PORT} !^443
RewriteRule (.*) https://example.com/$1 [R=301,L]
Ответ написан
Комментировать
RaSla
@RaSla
IT-специалист широкого профиля
Уберите редирект "HTTP -> HTTPS" - и будет Вам сайт по обоим протоколам.

Однако учитывайте:
1) Весь мир наоборот переходит на HTTPS-only (HTTPS-primary);
2) SEO-продвиженцы рекомендуют использовать ОДНУ (главную версию сайта), а с остальных версий (www. https://www. и т.д.) делать перманентные редиректы на Главную версию сайта.

nginx/sites-enabled/_xxx_.conf:
### _xxx_ - HTTP ###
server {
  server_name _xxx_;
  listen 80;

  access_log /var/log/nginx/_xxx_-http-access.log  combined  buffer=4k flush=5s;
  error_log  off;

  root       /var/www/html;

## ALLOW Let's Encrypt verification
  location ^~ /.well-known/ {
    root   /tmp/.well-known;
    allow  all;
  }
## ALL another - redirect to HTTPS
  location / {
    return 301 https://_xxx_$request_uri;
  }
}

### _xxx_ - HTTPS ###
server {
  listen 443 ssl http2; # http2 - 1.9.5+
  server_name  _xxx_;

  include conf.d/_https.conf.ssl; # common security params for ANY https site
  ssl_certificate_key     /etc/letsencrypt/live/_xxx_/privkey.pem;
  ssl_certificate         /etc/letsencrypt/live/_xxx_/fullchain.pem;
  ssl_trusted_certificate /etc/letsencrypt/live/_xxx_/chain.pem;

  access_log /var/log/nginx/_xxx_-https-access.log  combined  buffer=4k flush=5s;
  error_log  /var/log/nginx/_xxx_-https-error.log  error;

  root       /var/www/_xxx_/web;
...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы