Решение проблемы: веб-сервер в Kali Linux показывает пустые страницы

После недавнего обновления PHP в Kali Linux с 7.0 до версии 7.2 появилась новая ошибка: веб-сервер Apache в Kali Linux показывает страницы с HTML кодом, но не показывает большинство страниц с PHP кодом. Если это ваш случай – значит данная инструкция должна вам помочь.

На всякий случай, убедимся, что службы веб-сервера и СУБД запущены:

sudo systemctl start apache2.service
sudo systemctl start mysql

Uncaught Error: Class 'mysqli' not found in

Одним из признаков того, что проблема в конфликте версий PHP, это ошибка в логах веб-сервера, в которой говориться о том, что не найден класс mysqli. При этом до обновления PHP код на сервере работал.

Ошибки веб-сервера в Kali Linux можно посмотреть в файле /var/log/apache2/error.log, например:

tail /var/log/apache2/error.log

Ошибка, которая говорит о том, что не найден класс mysqli:

PHP Fatal error:  Uncaught Error: Class 'mysqli' not found in /var/www/html/mutillidae/classes/MySQLHandler.php:212\nStack trace:\n#0 /var/www/html/mutillidae/database-offline.php(8): MySQLHandler::databaseAvailable()\n#1 {main}\n  thrown in /var/www/html/mutillidae/classes/MySQLHandler.php on line 212

Как в Kali Linux переключиться с PHP 7.0 на PHP 7.2

Описанная проблема, судя по всему, связана с тем, что после установки PHP 7.2 по-прежнему продолжает использоваться версия PHP 7.0. И несмотря на то, что расширения, например такое как php7.0-mysql, никуда из системы не деваются, но они перестают подхватываться интерпретатором PHP и сервер уже не может полноценно работать с PHP кодом.

Самый простой вариант, который позволит решить эту проблему – отключение PHP 7.0 для Apache и включение PHP 7.2 для веб-сервера, поскольку в любом случае PHP 7.2 устанавливается автоматически. Для этого выполните:

sudo a2dismod php7.0
sudo a2enmod php7.2
sudo a2disconf php7.0-fpm
sudo systemctl restart apache2

Уже после этого должны исчезнуть ошибки с отсутствующими модулями, а страницы с PHP кодом должны начать отображаться.

Для удаления уже не нужных версий PHP и их следов, можно выполнить следующие команды (это опционально):

sudo apt remove php7.0
sudo rm -rf /etc/php/7.0/
sudo rm -rf /etc/php/7.1/
sudo apt autoremove

Рекомендуемые статьи:

Добавить комментарий

Ваш e-mail не будет опубликован.