Загрузка...

Problem Solving: Web Server in Kali Linux Shows Blank Pages

Thread in WiFi created by mxlsoermmidh Mar 1, 2018. 233 views

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

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

    1
    2
    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, например:

    1
    tail /var/log/apache2/error.log
    Ошибка, которая говорит о том, что не найден класс mysqli:

    1
    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
    [IMG]


    Как в 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 устанавливается автоматически. Для этого выполните:

    1
    2
    3
    4
    sudo a2dismod php7.0
    sudo a2enmod php7.2
    sudo a2disconf php7.0-fpm
    sudo systemctl restart apache2
    Уже после этого должны исчезнуть ошибки с отсутствующими модулями, а страницы с PHP кодом должны начать отображаться.

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

    1
    2
    3
    4
    sudo apt remove php7.0
    sudo rm -rf /etc/php/7.0/
    sudo rm -rf /etc/php/7.1/
    sudo apt autoremove
     
Loading...
Top