Apache перенаправляет с http на https - SSL рукопожатие не удалось: HTTP говорил через порт HTTPS
У меня установлено веб-приложение Moodle (система электронного обучения) на Debian 9 с веб-сервером Apache. Это устройство bitnami, но единственным отличием является структура папок. Я настроил перенаправление с http на https несколько месяцев назад. Недавно я обновил Moodle до последней версии, и перенаправление перестало работать. Я пытаюсь заставить его работать несколько дней, но безуспешно.
Я включил режим отладки в логах apache. Когда я захожу на сайт http://elearning.mymoodlesite.com/ в веб-браузере, я получаю сообщение об ошибке запроса.
Плохой запрос Ваш браузер отправил запрос, который этот сервер не может понять. Причина: вы говорите обычным HTTP с портом сервера с поддержкой SSL. Вместо этого используйте схему HTTPS для доступа к этому URL, пожалуйста.
В файле доступа access_log Apache "Get / HTTP/1.0" 400 362 ошибка
Это bitnami.conf, где я изменил конфигурацию в соответствии с этой https://docs.bitnami.com/aws/components/apache/:
# Default Virtual Host configuration.
<IfVersion < 2.3 >
NameVirtualHost *:80
NameVirtualHost *:443
</IfVersion>
<VirtualHost _default_:80>
DocumentRoot "/opt/bitnami/apache2/htdocs"
**RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule / https://elearning.mymoodlesite.com/$1 [R,L]**
<Directory "/opt/bitnami/apache2/htdocs">
Options -Indexes
AllowOverride All
<IfVersion < 2.3 >
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3 >
Require all granted
</IfVersion>
</Directory>
# Error Documents
ErrorDocument 503 /503.html
# Bitnami applications installed with a prefix URL (default)
Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>
# Default SSL Virtual Host configuration.
<IfModule !ssl_module>
LoadModule ssl_module modules/mod_ssl.so
</IfModule>
Listen 443
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH !aNULL !eNULL !LOW !3DE$
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:/opt/bitnami/apache2/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost _default_:443>
DocumentRoot "/opt/bitnami/apache2/htdocs"
SSLEngine on
SSLCertificateFile "/opt/bitnami/apache2/conf/mymoodlesite.pem"
SSLCertificateKeyFile "/opt/bitnami/apache2/conf/mymoodlesite.key"
<Directory "/opt/bitnami/apache2/htdocs">
Options -Indexes
AllowOverride All
<IfVersion < 2.3 >
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3 >
Require all granted
</IfVersion>
</Directory>
# Error Documents
ErrorDocument 503 /503.html
# Bitnami applications installed with a prefix URL (default)
Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-prefix.conf"
</VirtualHost>
# Bitnami applications that uses virtual host configuration
Include "/opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf"
Я экспериментировал с RewriteRule, изменил
RewriteRule / https://elearning.mymoodlesite.com/ $ 1 [R, L]
в
RewriteRule ^ / (. *) https://elearning.mymoodlesite.com/ $ 1 [R, L]
и некоторые другие комбинации, но это не помогло.
Завершите запись из apache error_log, когда я вхожу в http://elearning.mymoodlesite.com/:
[Пн. 13 августа 10:51:30.664911 2018] [ssl:info] [pid 13931:tid 140708832802560] [клиент 195.168.40.226:44320] AH01964: установлено соединение с ребенком 149 (сервер elearning.mymoodlesite.com:443)
[Пн. 13 августа 10:51:30.665158 2018] [ssl:info] [pid 13931:tid 140708832802560] [клиент 195.168.40.226:44320] AH01996: сбой рукопожатия SSL: HTTP говорил по порту HTTPS; пытается отправить страницу с ошибкой HTML
[Пн. 13 августа 10:51:30.665210 2018] [ssl:info] [pid 13931:tid 140708832802560] Ошибка библиотеки SSL: ошибка:1407609C: процедуры SSL:SSL23_GET_CLIENT_HELLO: HTTP-запрос - передача HTTP на порт HTTPS!?
[Пн. 13 августа 10: 51: 30.665329 2018] [заголовки: отладка] [pid 13931:tid 140708832802560] mod_headers.c(900): AH01503: заголовки: ap_headers_error_filter()
[Пн. 13 августа 10:51:30.852250 2018] [ssl:info] [pid 13931:tid 140708824409856] [клиент 195.168.40.226:44326] AH01964: установлено соединение с ребенком 150 (сервер elearning.mymoodlesite.com:443)
[Пн. 13 августа 10:51:30.852356 2018] [ssl:info] [pid 13931:tid 140708824409856] [клиент 195.168.40.226:44326] AH01996: сбой рукопожатия SSL: HTTP говорил по порту HTTPS; пытается отправить страницу с ошибкой HTML
[Пн, 13 августа 10:51:30.852377 2018] [ssl:info] [pid 13931:tid 140708824409856] Ошибка библиотеки SSL: ошибка:1407609C: процедуры SSL:SSL23_GET_CLIENT_HELLO: запрос HTTP - передача HTTP на порт HTTPS!?
[Понедельник, 13 августа 10: 51: 30.852426 2018] [заголовки: отладка] [pid 13931:tid 140708824409856] mod_headers.c(900): AH01503: заголовки: ap_headers_error_filter()