gpt4 book ai didi

php - sqlsrv 在 azure 上找不到驱动程序 laravel

转载 作者:搜寻专家 更新时间:2023-10-31 20:35:16 25 4
gpt4 key购买 nike

部署应用程序后,我更改了 env 文件以匹配已启动并正在运行的 sql 服务器的连接凭据。

访问网站时出现错误

> PDOException in Connector.php line 55: could not find driver in
> Connector.php line 55 at
> PDO->__construct('sqlsrv:Server=xxxx.database.windows.net;Database=xxxx', 'xxxx@xxxx', 'xxxxxx', array('0', '2', '0', false)) in Connector.php
> line 55

我尝试从azure门户打开控制台并编写php artisan migrate,它显示了相同的错误。

enter image description here

有人知道我怎样才能做到这一点吗?

最佳答案

您是否在 Azure 上启用了 php_sqlsrvphp_pdo_sqlsrv 扩展?您可以使用 phpinfo() 来检查 Azure 上 PHP 运行时的变量和扩展。

默认情况下,DLL 库 php_sqlsrvphp_pdo_sqlsrv 已安装在 Azure 上的 PHP ext 文件夹中,但尚未在 PHP 运行时中进行配置。所以我们需要手动配置扩展:

  1. 在 Azure 上应用程序的根目录中创建一个名为 .user.ini 的文件。

  2. .user.ini中写入以下内容:

    extension=php_pdo_sqlsrv.dll
    extension=php_sqlsrv.dll
  3. 重新启动您的应用程序。再次检查sqlsrvpdo_sqlsrv的扩展名。

更新

PHP 7 的库 sqlsrvpdo sqlsrv 现已推出。请尝试以下操作以在 Azure Web Apps 上启用 PHP 7 的 sqlsrv 扩展:

  1. https://github.com/Azure/msphpsql/tree/PHP-7.0下载PHP 7的扩展包,解压以供后续使用。
  2. 按照https://azure.microsoft.com/en-us/documentation/articles/web-sites-php-configure/#how-to-enable-extensions-in-the-default-php-runtime的指导进行操作上传 DLL 库并在 PHP 运行时进行配置。(默认情况下,Azure Web App 需要 nts 版本的 X86。请使用之前解压的 msphpsql-PHP-7.0\binaries\x86 中的库,然后使用php_sqlsrv_7_nts.dllphp_pdo_sqlsrv_7_nts.dll)
  3. 配置设置后重新启动站点。

如有任何进一步的疑问,请随时告诉我。

关于php - sqlsrv 在 azure 上找不到驱动程序 laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37245795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com