使用Windows身份验证的IIS PHP无法连接到SQL Server 2008R2

时间:2015-08-05 15:32:37

标签: php sql-server iis

我正在使用IIS运行PHP站点并连接到网络上另一台计算机上的Sql Server服务器。我创建了一个域用户,可以访问数据库并配置应用程序池以使用该域用户。

我一直收到这个错误:

Unable to connect.
Array
(
    [0] => Array
        (
            [0] => 28000
            [SQLSTATE] => 28000
            [1] => 18456
            [code] => 18456
            [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
            [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
        )

    [1] => Array
        (
            [0] => 28000
            [SQLSTATE] => 28000
            [1] => 18456
            [code] => 18456
            [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
            [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
        )

)

不确定为什么它在应用程序池中使用用户'NT AUTHORITY\ANONYMOUS LOGON'而不是域用户。

由于

2 个答案:

答案 0 :(得分:3)

我通过点击IIS中的网站,然后双击身份验证,右键单击匿名身份验证 - >编辑,然后选择应用程序池标识。

答案 1 :(得分:0)

1。)安装System Internals Process Monitor(如果尚未安装)。 https://technet.microsoft.com/en-us/sysinternals/bb842062

2.。)检查监控日志,确切了解匿名登录的确切位置。

这将允许您准确诊断正在发生的事情。