Бесплатный переход на SSL

Серитификаты как правило стоят денег, поэтому сделаем все бесплатно.

Для начала не плохо было бы ознакомиться с HTTPS FAQ где предлагается ряд бесплатных решений. Я выбрал wosign . Все на английском, но ничего сложного нет. Заполняем поля и получаем на почту архив с сертификатами.

Важно при заполнении формы запомнить пароль, он пригодиться чтоб разархивировать сертификаты, пришедшие на почту.

Распаковываем архив в произвольную папку на сервере и вносим правки в конфигурацию виртуального сервера:

‹IfModule mod_ssl.c›
‹VirtualHost *:443 ›
...
SSLEngine on
SSLCertificateFile /path/to/2_site.crt
SSLCertificateKeyFile /path/to/3_site.key
SSLCACertificateFile /path/to/1_root_bundle.crt

SSLOptions +StdEnvVars


SSLOptions +StdEnvVars

BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
‹/VirtualHostм
‹/IfModule›

Не забываем включить модуль ssl

a2enmod ssl

И перезагружаем сервер

service apache2 restart

Для пущей красоты можно в .htaccess поставить редирект на https

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}/

Есть нюанс. Если к сайту прикручены скрипты сторонних ресурсов без https то chrome будет ругаться. У меня были подключены шрифты от гугла, после смены адреса на https все заработало как надо.