Какие оптимальные строки .htaccess для перенаправления с HTTP на HTTPS

Если ваша цель — перенаправить весь трафик с HTTP на HTTPS для домена site.ru, вы можете использовать простую конфигурацию .htaccess. Вот оптимальные строки, которые вы можете включить в файл .htaccess, расположенный в корневой директории веб-сайта:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]

Вот что делает каждая из строк:

RewriteEngine On — Эта директива включает движок модуля mod_rewrite, который необходим для выполнения последующих инструкций переписывания URL.

RewriteCond %{HTTPS} off — Это условие проверяет, не используется ли протокол HTTPS. Если значение %{HTTPS} равно off, это означает, что запрос был выполнен по протоколу HTTP, и условие считается истинным.

RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L] — Это правило перенаправляет все запросы (выражение ^(.*)$ захватывает любую строку после имени хоста в URL) на HTTPS-версию сайта (https://site.ru/$1). Параметр [R=301] указывает на то, что это постоянное перенаправление (с кодом состояния HTTP 301). Параметр [L] говорит, что это последнее правило перенаправления, которое должно быть обработано, если запрос соответствует шаблону.

Убедитесь, что у вас есть действующий SSL-сертификат для вашего домена, чтобы HTTPS работал корректно и без предупреждений безопасности в браузерах пользователей.

Кроме того, если вы используете виртуальный хостинг и у вас есть доступ к основной конфигурации сервера, то перенаправление с HTTP на HTTPS лучше проводить на уровне конфигурации сервера, а не через .htaccess, так как это более эффективно с точки зрения производительности.