У меня проблема с конфигурациями моего сервера, мой сайт отлично работает с http-запросами, но когда я изменил его на https с помощью сертификата letsencrypt - чтобы включить http2 - сервер стал очень медленным. обычный запрос с http занимает от 4 до 7 секунд, но при использовании https большинство запросов (90%) занимают до 45 секунд. У меня последняя стабильная версия apache, и я следил за официальной документацией по установке letsencrypt.
Я почти неделю искал решение, но безуспешно, как это исправить?
Вам следует попробовать активировать http2. Для этого есть простые шаги:
a2dismod php7.0
a2dismod mpm_prefork
a2enmod mpm_event
a2enmod http2
systemctl restart apache2
Затем отредактируйте (или создайте файл):
nano /etc/apache2/conf-available/http2.conf
И напишите следующее:
<IfModule http2_module>
Protocols h2 h2c http/1.1
H2Direct on
</IfModule>
Затем включите и перезапустите:
a2enconf http2
systemctl restart apache2
Это источник (на испанском)
1) Реализация SSL / TLS, естественно, будет иметь дополнительную задержку. Это потому, что сначала необходимо согласовать безопасную связь. Таким образом, HTTP быстрее, чем HTTPS. Но обычно это не должно приводить к тому, что время загрузки в 4-7 секунд достигает 45 секунд.
2) Это не проблема Let's Encrypt. Они просто предоставляют вам сертификат, как и любые другие центры сертификации. Их сертификаты загружаются или согласовываются не дольше, чем другие.
3) Проверьте, оптимизировали ли вы свою систему для использования SSL / TLS. Я предлагаю вам просто использовать 2048-битные ключи, а не 4096-битные. Все 2048-битные ключи считаются безопасными в соответствии с отраслевыми стандартами, а 4096-битные ключи только потребуют дополнительных ресурсов обработки и времени. Но все же, даже с 4096 битами, это не приведет к увеличению времени загрузки до 45 секунд.
Вы также можете обратитесь к Mozilla для некоторых обновленных директив SSL и шифров.
Наконец, рассмотрите возможность проверки своих конфигураций VirtualHost и SSL. /etc/apache2/mods-enabled/ssl.conf
. Проблема не непосредственно в вашем сертификате.