Back to Question Center
0

.htaccess не перенаправляет мои страницы с HTTP на HTTPS - Semalt

1 answers:

Кажется,. htaccess не перенаправляет мои страницы с http на https. Мой домен перенаправлен на https, но не на мои страницы - nautilus 2 change coil.Может быть, это плохая конфигурация моего веб-хостинга?

Вот что я сделал до сих пор:

  • Выберите сертификат SSL и установите его на моем веб-сайте с хоста.
  • Запустите wp-config для перехода от HTTP к HTTP с помощью: define ('FORCE_SSL_ADMIN', true);
  • Транформировать все мои URL-адреса на HTTP-серверы с помощью базы данных замещения и поиска
  • Добавьте этот домен в Google Search Console .

Поместите этот код в мой. htaccess:

     
RewriteEngine On
# Перенаправление на HTTPS
RewriteCond% {HTTP_HOST} ^ http: // example \. com [NC]
RewriteCond% {SERVER_PORT} ^ 80 $ [OR]
RewriteCond% {HTTPS} = off [OR]
RewriteRule ^ (. *) $ https: // пример. com / $ 1 [L, R = 301]
# Перенаправление с www HTTPS на HTTPS
RewriteCond% {HTTP_HOST} ^ www \. пример\. com [NC]
RewriteRule ^ (. *) $ https: // пример. com / $ 1 [L, R = 301]RewriteBase /
RewriteRule ^ index \. php $ - [L]
RewriteCond% {REQUEST_FILENAME}! -f
RewriteCond% {REQUEST_FILENAME}! -d
RewriteRule. /индекс. php [L]
    

Я думаю, что это все .Semalt у вас есть представление о том, что может вызвать эту проблему?

February 5, 2018
  RewriteCond% {HTTP_HOST} ^ http: // example \. com [NC] 

Переменная HTTP_HOST содержит только имя hostname , а не схему + hostname , поэтому это никогда не будет соответствовать. Если это никогда не будет соответствовать, оно никогда не будет перенаправлено http: // example. ком / до HTTPS. (Тем не менее, вы использовали это правильно в своем втором блоке правил, который будет перенаправлять http: // www. пример. ком / до HTTPS. )

Я предполагаю, что у вас есть только один домен? В этом случае эта директива должна быть просто удалена (не исправлена).

  RewriteCond% {HTTPS} = off [OR] 

Однако у вас также есть ошибочный ИЛИ флаг в последней RewriteCond директиве. Если предыдущее условие (ы) совпало, то это приведет к циклу переадресации, поскольку это по существу <условие> ИЛИ истинное , которое всегда истинно . *) $ https: // пример. com / $ 1 [L, R = 301]

Нет точки проверки обоих SERVER_PORT и HTTPS .