Назад | Перейти на главную страницу

phpMyAdmin использует порт 80 на CloudFlare Flexible SSL

В настоящее время у меня есть 3 веб-сайта на выделенном сервере (работающие на одном IP-адресе).

Для одного из сайтов на сервере активен SSL, и phpMyAdmin работает нормально. После входа в систему вы будете перенаправлены в нужное место (https://example.tld/phpmyadmin например)

Однако для двух других сайтов у меня нет сертификата SSL для них, поэтому я использую гибкий универсальный SSL CloudFlare. Моя проблема заключается в входе в phpMyAdmin (посетив https://example.tld/phpMyAdmin) phpMyAdmin перенаправляет на порт 80, например. https://example.tld:80/phpMyAdmin и поскольку SSL больше не является безопасным (поскольку Apache начинает обслуживать незашифрованные данные), браузер отображает сообщение об ошибке, указывающее, что соединение небезопасно.

Есть идеи, как остановить перенаправление phpMyAdmin на порт 80?

Я нашел решение, которое сработало для меня: D

В phpmyadmin / libraries / Config.class.php найдите следующий код:

 if (! empty($url['port'])
                && (($url['scheme'] == 'http' && $url['port'] != 80)
                || ($url['scheme'] == 'https' && $url['port'] != 80)
                || ($url['scheme'] == 'https' && $url['port'] != 443)

            )) {
                $pma_absolute_uri .= ':' . $url['port'];
            }

и удалите последнее условие ИЛИ:

 if (! empty($url['port'])
                && (($url['scheme'] == 'http' && $url['port'] != 80)
                || ($url['scheme'] == 'https' && $url['port'] != 80)
                //|| ($url['scheme'] == 'https' && $url['port'] != 443)

            )) {
                $pma_absolute_uri .= ':' . $url['port'];
            }