【问题标题】:Making ODBC Driver 11 for SQL Server Available For PHP In Azure Website使 SQL Server 的 ODBC Driver 11 可用于 Azure 网站中的 PHP
【发布时间】:2015-02-09 03:05:02
【问题描述】:

我有一个 PHP 5.5 网站,在 Azure 网站中运行 WordPress,配置为使用 64 位 IIS 运行,数据库在 MySQL 中运行。我想将站点转换为在 Azure 中使用 SQL Server 而不是 MySQL。

我已经安装了WP Db Abstraction 插件,并按照它的设置说明进行操作。我选择使用sqlsrv 驱动程序,所以我安装了Microsoft Drivers for PHP for SQL Server 3.1 并将它们添加到WordPress 网站的文件夹中并将它们配置为扩展。在测试页面调用phpinfo()显示sqlsrv驱动已经加载到PHP中,同时还报告PHP是x86的。

我还设置了数据库、用户和密码,并测试了我可以使用 SQLCMD 成功连接到它。

Microsoft Drivers for PHP for SQL Server 3.1 说明指出“Microsoft ODBC Driver 11 for SQL Server version 11”也是必需的。我已经下载了 x64 和 x86 版本,并尝试了相关 Windows 目录中的 DLL,并将它们与两种架构的 PHP 驱动程序一起添加到扩展目录中,但都没有工作。

当尝试从正在运行的 PHP 站点连接到 SQL Azure 数据库时,我得到了这个错误:

This extension requires the ODBC Driver 11 for SQL Server. Access the following URL to download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712

我拥有的与 WordPress 站点根目录相关的驱动程序的 DLL 文件是:

  • ext\msodbcsql11.dll
  • ext\php_sqlsrv_55_nts.dll
  • ext\1033\msodbcsqlr11.rll

我在 Azure 管理门户中为应用设置网站设置了以下内容:

PHP_EXTENSIONS:ext\php_sqlsrv_55_nts.dll

我所能想到的只是我在 ODBC 驱动程序中遗漏了一些东西,或者我打算如何将它们提供给 PHP 驱动程序是不正确的。

有人对我错过了什么或为什么这不起作用有任何想法吗?

下面是我用来测试 PHP 中的 SQL Server 连接性的测试代码。

<?php
$serverName = "MYSERVER.database.windows.net,1433";
$connOptions = array("UID"=>"MYUSERNAME", "PWD"=>"MYPASSWORD");
$conn = sqlsrv_connect( $serverName, $connOptions );

if( $conn === false ) {
    die( print_r( sqlsrv_errors(), true));
}

if( $client_info = sqlsrv_client_info( $conn)) {
    foreach( $client_info as $key => $value) {
        echo $key.": ".$value."<br />";
    }
} else {
    echo "Error in retrieving client info.<br />";
}
?>

【问题讨论】:

    标签: php sql-server wordpress azure-web-app-service


    【解决方案1】:

    我最终并没有真​​正找到合适的解决方案,但结果证明所有使用 SQL Server 和 PHP 5.4 的位都已安装在 Azure 网站中。

    我从 PHP 5.5 降级到 5.4,然后 SQL Server 连接开始工作。

    并不是真正的修复,但它让我(大部分)达到了我想要的位置。

    【讨论】:

      猜你喜欢
      • 2016-11-24
      • 2016-09-30
      • 1970-01-01
      • 2016-06-17
      • 2013-09-03
      • 1970-01-01
      • 2019-09-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多