Эгея, Apache 2 и https

Принуждаем Эгею работать по протоколу https

Для того, чтобы заставить Эгею работать только по протоколу https на веб-сервере под управлением Apache 2 или Apache 2.2, тебе необходимо добавить несколько строк в файл .htaccess, который лежит в корневой директории твоего сайта.

Эта статья предполагает, что на твоем веб-сервере уже настроен виртуальный хост на порту 443 с поддержкой SSL, который обеспечивает работу по протоколу https.

Также, на твоем веб-сервере должны быть активированы модули для Apache 2 — SetEnvIf и Env. Чтобы проверить активированы ли вышеупомянутые модули, тебе нужно подключиться к веб-серверу через SSH-клиент и набрать в терминале следующую команду:

apachectl -M

В результате ты увидишь список модулей, которые подключены к Apache.

Эгея, Apache 2 и https
Строки env_module и setenvif_module соответственно

Если в появившемся списке модулей нет, тогда тебе нужно их подключить следующей командой:

a2enmod setenvif env

и затем перезагрузить сервер Apache 2

service apache2 restart

Для Linux Debian

service httpd restart

Для CentOS

И снова проверить подключенные модули:

apachectl -M

Если модули подключились, можно переходить к правке файла .htaccess.

Правка файла .htaccess

Принудительно переводим сайт на https

Или убираем из кода ссылки на http

Открой файл .htaccess, который лежит в коревой директории твоего сайта и добавь следующий код:

SetEnvIf X-HTTPS 1 HTTPS

или

<IfModule mod_env.c>
 SetEnv HTTPS "on"
 SetEnv HTTP_X_FORWARDED_PROTO "https"
</IfModule>

Какой вариант выбрать — решай самостоятельно. Пробуй оба варианта и выбери одно рабочее для тебя решение. Это принудительно переведёт весь сайт на https.

Делаем переадресацию с http на https

Или убираем лишнее зеркало

Для того, чтобы сделать переадресацию с протокола http на https, добавь в этом же .htaccess после строки:

RewriteEngine On

строки

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

Это правило будет автоматически редиректить на https все запросы, которые поступают на http, таким образом сайт будет доступен только по одному протоколу, что исключит возможность дублирования сайта.

Сохрани изменения в файле .htaccess и проверь на работоспособность новую доработку.

Вывод

Эгея, Apache 2 и https

В качестве вывода могу сказать, что это простое решение [возможно тривиальное и не самое правильное] позволяет полноценно перевести тебе свой блог на защищенный протокол передачи данных — https и сделать переадресацию на него с незащищенного протокола http.

Я надеюсь, что смог помочь тебе этой статьёй сделать твой блог немного лучше и качественней. Если у тебя возникли вопросы — пиши в комментариях, я с радостью тебе отвечу. До связи!

Плюсануть
Поделиться
Отправить
Запинить
Понравился этот пост? Поделись им в соцсети!
Популярное
1 комментарий
Arthur
Arthur

24 августа 2017, 22:46

Отличная статья с детальным пошаговым описанием действий!

Александр Окатьев

Arthur, благодарю за положительный отзыв! Рад, что смог помочь.

Ваш комментарий
адрес не будет опубликован
HTML-код не интерпретируется

Ctrl + Enter