Centos - PhpMyAdmin показывает пустой экран
Я только что установил PhpMyAdmin, и когда я пытаюсь получить к нему доступ, он просто показывает пустой экран. Я подозревал, что это потому, что я следовал учебнику о том, как защитить php и отключил несколько настроек, поэтому я переустановил php для сброса файла php.ini, но это не решило проблему... Теперь я думаю, что это может быть из-за Suhosin PHP мод безопасности, или я пропускаю модуль PHP. Моя php информация доступна здесь: http://87.92.41.2/phpinfo.php
4 ответа
В зависимости от того, что еще работает на этом общедоступном (я полагаю, на основе вашей ссылки) веб-сервере, я рекомендую просмотреть журналы ошибок (расположенные в /var/log/httpd/php_error_log.log согласно phpinfo) на вашем сервере и, возможно, разрешить PHP, чтобы показать ошибки, пока вы решаете проблему. Как вы предполагаете, наиболее вероятная проблема - это что-то, вызывающее проблему, такую как HTTP 500 или аналогичная, где сервер имеет проблему, но настроен так, чтобы не показывать ошибку.
Проверьте, установлены ли у вас все расширения PHP. Если при доступе к странице в консоли отображается 200, но страница пуста, скорее всего, вам не хватает некоторых расширений. Попробуйте установить их, если у вас их нет.
$sudo dnf install php-pdo
$sudo dnf install php-mysql
$sudo dnf install php-mysqli
Примечание. Если вы используете yum в качестве установщика, вы можете сделать то же самое с помощью yum.
Причин может быть больше, но это очень заметная причина на новых серверах, а также ошибки отображения по умолчанию отключены при новой установке, поэтому вы можете даже не увидеть некоторые предупреждающие сообщения.
Проверяя ссылку http://87.92.41.2/phpmyadmin теперь я вижу:
запрещено
У вас нет прав доступа к / phpmyadmin на этом сервере.
По умолчанию phpmyadmin доступен только с локального хоста на CentOS, если вы хотите сделать его доступным с внешнего хоста, вы должны отредактировать /etc/httpd/conf.d/phpMyAdmin.conf
:
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
Require ip 10.10.10.1/24 # TO ALLOW ACCESS FROM A SPECIFIC IP RANGE
Require all granted # TO ALLOW ACCESS FROM EVERY IP
</RequireAny>
А затем перезапустите Apache:
systemctl restart httpd
Пожалуйста, будьте осторожны, разрешить доступ с каждого IP-адреса может быть недостатком безопасности, ограничить его конкретным, доверительным, диапазоном или, как минимум, использовать очень надежный пароль и настроить HTTPS.
Так бесит, что на экране нет конкретной ошибки. Причина в моем случае: «установить разрешение на запись для
config.inc.php
" . Итак, мы устанавливаем только разрешение на чтение и выполнение :
sudo chmod -R 555 /etc/phpMyAdmin
Примечание. Если мы установим только разрешение на чтение, конфигурация не будет работать.