Как исправить содержимое файла php.ini (версия 8.2) или сгенерировать новый файл

Вопрос или проблема

Я пытаюсь запустить программу подключения к базе данных, связанную с PHP, на Ubuntu 22.04:

<?php
include('dbconnection.php');
$servername = "localhost";
$username = "root";
$password = "";

echo "Тестирование";
//https://forum.infinityfree.com/t/cant-connect-my-php-to-mysql/63505/15#google_vignette
$mysqli = @new mysqli('localhost', 'root', '', 'does_not_exist');
if ($mysqli->connect_errno) {
    /* Используйте ваш предпочтительный метод логирования ошибок здесь */
    echo "Ошибка тестирования";
    error_log('Ошибка подключения: ' . $mysqli->connect_errno);
}
else {

echo "Нет ошибок";
}
?>

Это выводит “Тестирование”. Я проверил php.ini, но обнаружил, что в нем нет строки:

;extension=php_mysqli.dll

Содержимое файла php.ini находится по адресу: https://github.com/zulfi100/files

Пожалуйста, кто-нибудь, проверьте мой файл php.ini и дайте знать, если он правильный. Если нет, пожалуйста, подскажите, как его исправить.

Зульфи.

Ответ или решение

Для решения проблемы, связанной с подключением базы данных в PHP, необходимо проверить и, при необходимости, откорректировать файл конфигурации php.ini. Я дам подробные инструкции по исправлению существующего файла php.ini версии 8.2, а также предложу, как сгенерировать новый файл, если это необходимо.

Шаг 1: Находим и открываем php.ini

На операционной системе Ubuntu 22.04 файл php.ini обычно располагается по следующему пути:

/etc/php/8.2/apache2/php.ini

или

/etc/php/8.2/cli/php.ini

Эти два файла могут различаться по содержимому, поскольку первый используется для работы веб-сервера Apache, а второй — для командной строки. Убедитесь, что вы редактируете тот файл, который нужен для вашего приложения.

Чтобы открыть файл, используйте текстовый редактор. Например, с помощью nano вы можете выполнить следующую команду:

sudo nano /etc/php/8.2/apache2/php.ini

Шаг 2: Проверка и активация расширения mysqli

Ваша основная проблема заключается в том, что вы не можете подключиться к базе данных, и у вас отсутствует строка:

;extension=php_mysqli.dll

Эта строка указывает на необходимость активировать расширение mysqli, но в Ubuntu используется другая форма записи. В файле php.ini вам нужно убедиться, что следующее расширение включено:

extension=mysqli

Если вы не нашли этот параметр, добавьте его в разделе, отвечающем за расширения (обычно это раздел под заголовком Dynamic Extensions). Убедитесь, что он не закомментирован (без символа ; перед строкой).

Шаг 3: Перезапуск веб-сервера

Однако, после внесения изменений в php.ini, необходимо перезапустить веб-сервер, чтобы изменения вступили в силу. Если вы используете Apache, выполните следующее команду:

sudo systemctl restart apache2

Если вы используете другой сервер (например, Nginx), выполните команду для его перезапуска.

Шаг 4: Проверка на ошибки

После выполнения всех изменений и перезапуска сервера попробуйте снова запустить ваш PHP-скрипт. Если проблема не исчезла, проверьте журналы ошибок, чтобы узнать больше об ошибках подключения:

sudo tail -f /var/log/apache2/error.log

Шаг 5: Генерация нового файла php.ini

Если вам необходимо сгенерировать новый файл php.ini, вы можете сделать это, скопировав образец, который обычно расположен в директории установки PHP:

cd /etc/php/8.2/apache2
sudo cp php.ini-production php.ini

Затем откройте новый файл для редактирования и внесите изменения, как указано ранее.

Заключение

После внесения этих изменений ваш PHP-скрипт должен работать корректно, и подключение к базе данных будет установлено. Если возникнут дополнительные трудности, рекомендуется проверить права доступа пользователя базы данных и настройки MySQL.

Если у вас остались вопросы или уточнения, пожалуйста, не стесняйтесь обращаться за дополнительной помощью.

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

Капча загружается...