Браузеры помечают сайты без HTTPS как «небезопасные». Чтобы сайт работал через HTTPS необходимо установить SSL-сертификат.
SSL-сертификат я покупал в Timeweb:
Когда сертификат будет выпущен, можно скопировать содержимое его файлов.
Создать на сервере папки:
mkdir -p /opt/lampp/etc/ssl.crt mkdir -p /opt/lampp/etc/ssl.key
Создать файл сертификата:
Вставить в него содержимое сертификата (включая строки -----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----).
Создать файл ключа:
Вставить в него содержимое ключа (включая строки -----BEGIN PRIVATE KEY----- и -----END PRIVATE KEY-----).
Установить права доступа:
chmod 644 /opt/lampp/etc/ssl.crt/project-euler.ru.crt chmod 600 /opt/lampp/etc/ssl.key/project-euler.ru.key
Перейти в файл:
Добавить в конец файла:
<VirtualHost *:443>
ServerName project-euler.ru
ServerAlias www.project-euler.ru
DocumentRoot "/opt/lampp/htdocs/project-euler-website"
<Directory "/opt/lampp/htdocs/project-euler-website">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "/opt/lampp/etc/ssl.crt/project-euler.ru.crt"
SSLCertificateKeyFile "/opt/lampp/etc/ssl.key/project-euler.ru.key"
ErrorLog "/opt/lampp/logs/project-euler-ssl-error.log"
CustomLog "/opt/lampp/logs/project-euler-ssl-access.log" combined
</VirtualHost>
Настроить перенаправление с HTTP на HTTPS, для чего изменить блок для порта 80:
<VirtualHost *:80>
ServerName project-euler.ru
ServerAlias www.project-euler.ru
Redirect permanent / https://project-euler.ru/
</VirtualHost>
Включить SSL-модуль в Apache
Раскомментировать строку:
Перезапуск Apache:
Проверка в командной строке:
Должно вернуться содержимое index файла.
Проверка в браузере:
Теперь должен появиться замочек — соединение защищено.