基本上就是这样的场景:
我需要访问一个MS SQL Server 2000数据库,在那里我可以使用NT(LPAD)身份验证来访问我的用户。
但是,我的平台是Windows XP上的PHP5/Apache2.2,我无法在SQL Server上进行身份验证。
我尝试过直接连接使用:
msql_connect("serverip", "user", "password");
使用
mssql.secure_connection = Off
没有成功。
也尝试了使用和不使用user/pwd和secure_connection On/Off。登录的所有抛出错误均失败。
其次,尝试使用odbc连接。在系统DNS上设置并测试成功(在DNS配置对话框上)。然后在php上,我将连接设置为:
odbc_connect("dnsName", "user", "password");
也有/没有user/pwd,所有尝试都失败。(在这里,我试图更改一些DNS配置,但没有成功)。
第三,我在Win32上研究没有用于apache身份验证的sspi模块,但无法下载该模块进行测试。此外,我也不确定是否有可能跨越这座微软的桥梁。
因此,任何建议(即使最好的方式是放弃)都是值得赞赏的。
PS:原因:未与受信任的SQL Server连接关联
'好的,还没有测试,但由于没有人知道,这是我的尝试。
要实现此功能,您必须在服务器上设置具有正确权限的Apache服务以进行身份验证。
这是在管理工具->服务->右键点击Apache服务中实现的。
有一个选项卡,您必须在其中设置服务的登录。将此设置为您的获胜用户帐户,然后重新启动服务(停止并启动)。
这里的提示不是使用Apache监视器来执行此操作,而是在管理工具本身上停止和启动服务。
希望它能帮助到别人。