Main > Apache | Servers > https на локальном компьютере

https на локальном компьютере

09.07.2018 5 comments » Views: 5,401

SSL Certificate

При разработке AMP версии (см https://www.ampproject.org) одного проекта, столкнулся с тем, что формы требуют наличие https для домена. Разработку веду на локальном веб-сервере, поэтому https-а там не было. В этой статье расскажу как настроить..

В этот раз я использовал локальный веб-сервер "Apache 2", поэтому далее речь пойдет именно про его настройку.

Прежде всего, создаем папку для сертификатов и переходим в неё:

Теперь генерируем сертификат для localhost:

Отвечаем на простые вопросы, вводимая информация особо не важна, т.е. можно ввести что угодно

На выходе, получаем два файлика: localhost.key и localhost.crt

Теперь, добавляем модуль mod_ssl в апач:

Далее открываем файл конфигурации виртуального хоста и добавляем  инструкции по подключению SSL.

Например, если для обычного http у вас была вот такая запись конфигурации

то добавляем еще одну конфигурацию, вот такую

В ней мы поменяли порт с 80 на 443 в теге VirtualHost и добавили подключение SSL сертификатов, вот этими командами:

Теперь перезапускаем apache:

И можно переходить на https версию сайта.

Т.к. это самоподписанный сертификат, то мы получим предупреждение от браузера типа такого:

HTTPS: Your connection is not secure

Сообщение "HTTPS: Your connection is not secure"

Нажимаем кнопку [Advanced] и в открывшейся панельке [Add Exception..]

HTTPS: Your connection is not secure, Advanced panel

Панель "Advanced panel"

В появившемся окне, нажимаем [Get certificate] и затем [Confirm Security Exception]

Add security exception

Добавление исключения безопасности

После этих манипуляций, сайт заработает через https протокол.

--[добавлено 30.08.2018]--

Так же можно добавить автоматический редирект всех запросов с http на https. Для этого в файл .htaccess в корне сайта, добавляем (желательно сразу после RewriteEngine on)

Теперь если зайти по адресу http://domain.tld/param, вас автоматически перенаправит на https://domain.tld/param

Author: | Rating: 4/5 | Tags: , , , , ,

5 comments.

Write a comment
  1. Геннадий Reply
    12.11.2023 в 2:34 pm
    Два часа уже ищу информация в сети на эту тему и в итоге либо специалисты пишут для специалистов, что просто смертный хрен поймёт, либо вообще пишут настолько непонятно, как на отебись.
  2. Геннадий Reply
    12.11.2023 в 2:29 pm
    "Прежде всего, создаем папку для сертификатов и переходим в неё" - где создаём?
    "Теперь генерируем сертификат для localhost:" - как это вообще и чем можно сделать?
    • Vitaliy Orlov Reply
      13.01.2024 в 4:34 pm
      Там же прям команды написаны вместе с путем, и для создания папки и для генерации сертификата. Если они у тебя вызывают недопонимание, то стоит потратить 30 минут на какой-нибудь базовый курс в ютубе по консольным командам линукс, станет понятнее что тут написано.
  3. Олег Reply
    29.08.2018 в 1:09 pm
    SSLEngine on
    SSLCertificateFile /etc/ssl/apache/localhost.crt
    SSLCertificateKeyFile /etc/ssl/apache/localhost.key

    Ошибка в путях: папку вы назвали apache2
    • Vitaliy Orlov Reply
      30.08.2018 в 11:07 am
      Спасибо, исправил!

Leave a Reply

Your email address will not be published. Required fields are marked *

Allowed HTML-tags: <a>, <code>, <i>, <em>, <strong>, <b>, <u>, <strike>