Рейтинг:0

Как установить драйвер pdo в apache?

флаг bd

У меня есть сервер Debian 11

На моем сайте у меня есть следующая ошибка:

Вызвано: PDOException
не смог найти драйвер

Согласно тому, что phpinfo() функция возвращает, мой php.ini файл находится в:

/etc/php/7.4/apache2/php.ini

У меня есть следующие модули:

root@xxx:/var/www/html/xxx # php -m
[Модули PHP]
...
ЗОП
pdo_mysql
...

Я попытался раскомментировать строки в /etc/php/7.4/apache2/php.ini файл: расширение = mysqli и расширение = pdo_mysql а затем сделать служба apache2 перезапуск но это не работает

Как я могу загрузить драйвер?

Chris avatar
флаг it
Если требуемый модуль загружен, но у вас все еще есть ошибка, скорее всего, это что-то не так в вашем коде, а не проблема с конфигурацией сервера. Он работает в другом месте?
Jorge Palacios Zaratiegui avatar
флаг bd
Да, он работает на другом сервере. Конкретная ошибка возникает в `/var/www/html/xxx/vendor/yiisoft/yii2/db/Connection.php в строке 723` Папка поставщика создается с помощью `composer update`, это не код, разработанный нами. Есть библиотеки и зависимости
Jorge Palacios Zaratiegui avatar
флаг bd
Если я запускаю `phpinfo()` на своем веб-сайте, он говорит, что у меня php 7.4.26. Однако, если я запускаю на сервере php -v, у меня версия 8.0.13. Может ли меня сбить с толку команда `php -m`? Действительно ли модуль загружен?
Chris avatar
флаг it
Да, возможно, версия CLI, которую вы используете, не совпадает с версией Apache. В phpinfo() интересная часть — это драйверы PDO, включенные в разделе «PDO».

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.