Задача: сделать так, что-бы наш сайт открывался локально по протоколу https на нашей рабочей машине с операционной системой Ubuntu 19.04
Покупать для этого сертификат не совсем разумно, по этому мы его сами создадим. И для создания самоподписанного сертификата перейдём в то место где он будет лежать (например /home/prg/PhpstormProjects/site.ru/ssl/site.local) и выполним следующую команду
openssl req -new -x509 -days 30 -keyout site.local.server.key -out site.local.server.pem
На вопрос «Enter PEM pass phrase:» отвечаем паролем, подтверждаем и запоминаем. Далее отвечаем произвольно, только на вопрос «Common Name (eg, YOUR name) []:» отвечаем именем сайта, для которого создаем сертификат, например site.local.
После ответа на все вопросы в директории должны появиться два новых файла - site.local.server.pem и site.local.server.crt (ключ и сертификат, соответственно).
Будет логично сохранить этот файл в папке, в которой находится локальный проект, а не в той папке где лежат все ssl сертификаты. т.е. не в папке /etc/ssl
Apache при перезапуске начнёт интересоваться, знаем ли мы контрольное слово, которое было использовано во время генерации ключа. И что-бы он этого не делал нужно его убедить так
cp site.local.server.key{,.orig}
openssl rsa -in site.local.server.key.orig -out site.local.server.key
rm site.local.server.key.orig
Теперь всё готово для подключения этих сертификатов
<VirtualHost *:80> ServerName site.local ServerAlias www.site.local ServerAdmin info@site.ru DocumentRoot /home/prg/PhpstormProjects/site.ru/public <Directory /home/prg/PhpstormProjects/site.ru/public> Options Indexes FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog /home/prg/PhpstormProjects/site.ru/error.log CustomLog /home/prg/PhpstormProjects/site.ru/access.log combined </VirtualHost> <VirtualHost *:443> ServerName site.local ServerAlias www.site.local ServerAdmin info@site.ru DocumentRoot /home/prg/PhpstormProjects/site.ru/public <Directory /home/prg/PhpstormProjects/site.ru/public> Options Indexes FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog /home/prg/PhpstormProjects/site.ru/error.log CustomLog /home/prg/PhpstormProjects/site.ru/access.log combined SSLEngine on SSLCertificateFile /home/prg/PhpstormProjects/site.ru/ssl/site.local/site.local.server.pem SSLCertificateKeyFile /home/prg/PhpstormProjects/site.ru/ssl/site.local/site.local.server.key </VirtualHost>
Здесь следует помнить как мы настраиваем Apache для работы с локальным сайтом
Так же здесь некоторые пути вы можете свободно менять в зависимости от расположения вашего проекта и расположения файлов ключей
Оставить комментарий
Оставить комментарий могут только зарегистрированные пользователи