Убедитесь, что у вас есть следующая строка в httpd.conf (поддержка mod_rewrite включена по умолчанию):
LoadModule rewrite_module modules/mod_rewrite.so
Теперь вам просто нужно отредактировать или создать файл .htaccess в корневом каталоге вашегодомена и добавьте эти строки, чтобы перенаправить http на https:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Теперь, когда посетитель печатает http://www.yourdomain.com,, сервер автоматически перенаправляет HTTP на HTTPS https://www.yourdomain.com
Как перенаправить HTTP на HTTPS на виртуальном хосте Apache
Кроме того, чтобы заставить весь веб-трафик использовать HTTPS, вы также можете настроить файл виртуального хоста.Существует два важных момента, касающихся конфигурации виртуального хоста, если включен сертификат SSL.
Первый содержит конфигурацию для незащищенного порта 80.
Второй - для защищенного порта 443. Перенаправление HTTPHTTPS для всех страниц вашего сайта, сначала откройте соответствующий файл виртуального хоста.Затем измените его, добавив приведенную ниже конфигурацию:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.yourdomain.com
Redirect / https://www.yourdomain.com
</VirtualHost>
<VirtualHost _default_:443>
ServerName www.yourdomain.com
DocumentRoot /usr/local/apache2/htdocs
SSLEngine On
# etc...
</VirtualHost>
После всех изменений не забудьте перезагрузить сервер.