Примеры редиректов для .htaccess с http на https

Редирект всех страниц с HTTP на HTTPS

Редирект всех страниц с http:// на https://, в том числе и редирект с www на без www https://

(актуально для хостинга reg.ru, но не только)

Вариант 1

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

или воспользуйтесь вторым вариантом (если первый вариант не поможет):

Вариант 2

RewriteEngine On
RewriteCond %{HTTPS} =off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

если все варианты не помогли и возникает циклическая переадресация, добавьте:

Вариант 3 — подходит для Таймвеб

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Вариант 4

RewriteEngine On 
RewriteCond %{ENV:HTTPS} !on 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Редирект c http на https только выбранной страницы

В примерах ниже редирект настраивается для страницы index1.php.

Вариант 1

RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} =/index1.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]

или

Вариант 2

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} =/index1.php
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

Редирект с http на https всех страниц, кроме одной

В примере ниже редирект настраивается для страницы index1.php.

RewriteEngine On
RewriteCond %{HTTPS} =off
RewriteCond %{REQUEST_URI} !^/index1.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]