部署应用程序后,我更改了我的env文件,以匹配已启动且已在运行的sql server的连接凭据。
访问网站时出错
> 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 portal打开控制台并编写php artisan migrate
,它显示了同样的错误。
任何人都知道如何才能让这项工作成功?
答案 0 :(得分:3)
您是否在Azure上启用了php_sqlsrv
和php_pdo_sqlsrv
扩展程序?您可以使用phpinfo()
检查Azure上PHP运行时的变量和扩展名。
默认情况下,DLL库php_sqlsrv
和php_pdo_sqlsrv
已安装在Azure上的PHP ext文件夹中,但尚未在PHP运行时中配置。所以我们需要手动配置扩展:
.user.ini
的文件。在.user.ini
中写下以下内容:
extension=php_pdo_sqlsrv.dll
extension=php_sqlsrv.dll
重新启动您的应用程序。再次检查sqlsrv
和pdo_sqlsrv
的扩展名。
由于PHP 7的库sqlsrv
和pdo sqlsrv
现已可用。请尝试以下操作在Azure Web Apps上启用PHP 7的sqlsrv扩展:
msphpsql-PHP-7.0\binaries\x86
中的库,以及使用php_sqlsrv_7_nts.dll
和php_pdo_sqlsrv_7_nts.dll
)如有任何疑问,请随时告诉我。