#php #laravel #ubuntu #homestead
#php #laravel #ubuntu #homestead
Вопрос:
Я уже добавил расширения sqlsrv и pdo_sqlsrv, а также mssql-tools, но при загрузке страницы появляется ошибка «драйвер не найден (sqlsrv)». Также, если я печатаю phpinfo () через страницу, расширение не отображается.
Но когда я пишу php -m, оба расширения отображаются в списке, также, если я запускаю «php artisan tinker» и выполняю запрос к базе данных MSSQL, возвращает мне данные!
Я не знаю, почему это происходит, я уже проверил, и php через terminal и phpinfo показывают, что я использую php 7.3.
Надеюсь, вы сможете мне помочь.
Комментарии:
1. вы перезагрузили
php-fpm
?2. Да, я делал, каждый раз, когда я выполнял изменение, я перезагружал fpm и nginx
3. php запускался из терминала (CLI), и phpfpm не использует одну и ту же конфигурацию. Вы не можете запустить тест из командной строки и ожидать, что Веб сделает то же самое. Другая проблема заключается в том, что nginx отправляет php-запрос на сокет unix. Вы подключаетесь к php7.3-fpm или нет? Нет необходимости перезагружать nginx после включения или отключения расширений php, все, что вам нужно перезагрузить, это php-fpm. Убедитесь, что вы редактируете правильную конфигурацию для версии php, используемой вашей системой.
4. Когда я запускаю phpinfo () из Интернета, я редактирую файл .ini, помеченный как основной, и вставляю расширения вручную, и появляется только одно из расширений, я не знаю, почему второе (pdo_sqlsrv) не отображается.
5.Вы включили
pdo_sqlsrv
послеsqlsrv
? Порядок важен, поскольку библиотека PDO построена на другой.