Php 如何在microsoft AZURE server(PaaS)中安装msodbcsql

Php 如何在microsoft AZURE server(PaaS)中安装msodbcsql,php,sql-server,azure,database-connection,paas,Php,Sql Server,Azure,Database Connection,Paas,好的,基本上我现在已经在Azure中部署了一个Web应用程序,但我似乎无法连接到单独的SQL SERVER。我已经提供了连接所需的所有应用程序设置,但似乎不好 现在我寻找可能的原因: msodbcsql缺少PHPextDLL,它们是 php_pdo_sqlsrv_56_ts.dll 和 php_sqlsrv_56_ts.dll 我已经添加了此dll,并根据此文档相应地引用了它们 现在,msodbcsql安装在Azure中的不确定性已经显现 这就是我的问题所在 因此,在第2个示例中,我尝试将安装程

好的,基本上我现在已经在Azure中部署了一个Web应用程序,但我似乎无法连接到单独的SQL SERVER。我已经提供了连接所需的所有应用程序设置,但似乎不好

现在我寻找可能的原因:

  • msodbcsql缺少PHP
    ext
    DLL,它们是
  • php_pdo_sqlsrv_56_ts.dll 和 php_sqlsrv_56_ts.dll

    我已经添加了此dll,并根据此文档相应地引用了它们

  • 现在,msodbcsql安装在Azure中的不确定性已经显现 这就是我的问题所在

    因此,在第2个示例中,我尝试将安装程序复制到Azure D:/home/

    并在命令行中运行此命令

    msiexec/quiet/passive/qn/i msodbcsql.msi iacceptmsodbcsqlllicenseterms=YES ADDLOCAL=ALL

    它应该安装.msi安装程序,但我总是得到一个

    访问被拒绝

    错误


    还有其他方法吗?

    基本上Azure已经为我们设置了扩展名
    php_sqlsrv.dll
    &
    php_pdo_sqlsrv.dll
    ,所以我们自己不需要安装任何驱动程序来连接SQL SERVER

    您可以使用Kudu控制台检查
    php.ini
    文件,该文件位于
    D:\local\Config\php-\php.ini
    ,以确认这一点

    此外,您还可以在应用程序中使用
    phpinfo()
    函数检查这一点

    我已经用下面几行代码对它进行了测试,并使其正常工作

    <?php
    $serverName = "serverName\sqlexpress"; //serverName\instanceName
    $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
    $conn = sqlsrv_connect( $serverName, $connectionInfo);
    
    if( $conn ) {
         echo "Connection established.<br />";
    }else{
         echo "Connection could not be established.<br />";
         die( print_r( sqlsrv_errors(), true));
    }
    ?>
    
    
    

    基本上Azure已经为我们设置了扩展
    php_sqlsrv.dll
    &
    php_pdo_sqlsrv.dll
    ,所以我们自己不需要安装任何驱动程序来连接SQL SERVER

    您可以使用Kudu控制台检查
    php.ini
    文件,该文件位于
    D:\local\Config\php-\php.ini
    ,以确认这一点

    此外,您还可以在应用程序中使用
    phpinfo()
    函数检查这一点

    我已经用下面几行代码对它进行了测试,并使其正常工作

    <?php
    $serverName = "serverName\sqlexpress"; //serverName\instanceName
    $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
    $conn = sqlsrv_connect( $serverName, $connectionInfo);
    
    if( $conn ) {
         echo "Connection established.<br />";
    }else{
         echo "Connection could not be established.<br />";
         die( print_r( sqlsrv_errors(), true));
    }
    ?>
    
    
    

    很抱歉回复太晚。事实证明你是对的,我的问题是我需要在AWS服务器中添加我的IP以允许连接到数据库。现在我可以连接到SQL server了。谢谢你的提示。很抱歉回复晚了。事实证明你是对的,我的问题是我需要在AWS服务器中添加我的IP以允许连接到数据库。现在我可以连接到SQL server了。谢谢你的提示。