2

我是 PHP 新手,遇到了一个相当简单但令人讨厌的问题。

这是设置:

  • Windows 域环境
  • 用户连接到运行 IIS7 和最新版本 PHP 的本地服务器 2008 框
  • 此框包含连接到本地 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 分钟刷新一次页面。

当然有更好的方法来做到这一点,是吗?

4

1 回答 1

2

如果您使用 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

于 2012-05-04T20:51:49.050 回答