php链接局域网mssql的问题

本文记录了解决PHP连接局域网内的MSSQL服务器遇到的问题,详细介绍了错误信息及排查过程,并给出了最终解决方案,即修改php.ini配置文件中的mssql.secure_connection参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码
PHP code $hostname="HTSC"; $dbuser="sa"; $dbpasswd="123456"; $id = mssql_connect($hostname,$dbuser,$dbpasswd) or die("无法连接数据库服务器!");
如果是本地的mssql数据库,则链接通过。但,如果链接局域网内另外一台机器就不行了。错误信息为:
Warning: mssql_connect() [function.mssql-connect]: message: 用户 '(null)' 登录失败。原因: 未与信任 SQL Server 连接相关联。 (severity 14)

我试了很多办法都不行:
1、SQL  Server  和Windows 用混合模式
2、除了sa以外,也试过添加其它用户(具备所有权限)进行链接
3、telnet ip 1433 测试通过
4、数据库都是sql2000 sp4的
5、试过换了几台电脑
6、用sql2000的ntwdblib.dll覆盖了php5的文件

另外,我用vb编写的代码是能正常访问另外一台mssql服务器的。
查看了一下,mssql的用户中,有一个aspnet的用户,是否要添加一个类似的php用户才能登陆呢?

请各位帮帮忙

 

写道
告诉大家一个好消息,我自己解决问题了。是php.ini的原因。
网上的教程是这样的‘mssql.secure_connection = On’,本地链接正常。
但,对于链接局域网的服务器这种配置是不正确的,应该是mssql.secure_connection = Off。
感谢楼上的各位
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值