我是 PHP 的新手,遇到了一个相当简单但烦人的问题。
这是设置:
- Windows域环境
- 用户连接到运行 IIS7 和最新版本的本地服务器 2008 PHP版本
- 此框包含连接到本地 mssql 服务器的 php 脚本
如果用户导航到 http://iisservername/并尝试通过 php 脚本连接到 mssql 服务器,他们收到 Login failed for user NT AUTHORITY\ANONYMOUS LOGON
我的解决方法是在使用 runas/profile/user:domain\user "c:\program files\internet explorer\iexplore.exe"的 IIS 服务器上启动一个 cmd 脚本
我在 cmd 脚本中为每个用户创建一个 runas 行并执行它。
启动后,它会导航到主页,这是我制作的一个 keepalive.php 脚本,它会打开一个连接,然后 javascript 每 x 分钟刷新一次页面。
肯定有更好的方法,是吗?
最佳答案
如果您使用 sqlsrv_connect 并且正在使用 IIS 的内置身份验证,则应该为您处理它:
/* Specify the server and connection string attributes. */
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
/* Connect using Windows Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
(示例来自:http://msdn.microsoft.com/en-us/library/cc296205%28v=sql.90%29.aspx)
关于php - IIS PHP 使用 Windows 身份验证连接到 MSSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10455700/