首先确认MSSQL实际使用的TCP端口(默认1433),在SQL Server Configuration Manager中启用TCP/IP并记录端口;接着在Windows防火墙中创建入站规则,放行该端口;若为云服务器,还需在安全组中添加对应TCP端口的入站规则;最后通过telnet或Test-NetConnection命令从PHP服务器测试与MSSQL端口的连通性,确保网络畅通。

要让PHP顺利连接到MSSQL数据库,除了正确配置PHP环境和SQL Server外,防火墙设置是关键环节。若网络被阻断,即使配置无误也无法建立连接。以下是确保PHP连接MSSQL网络畅通的防火墙端口配置要点。
确认MSSQL使用的通信端口
MSSQL默认使用TCP 1433端口进行通信。但若安装时选择了命名实例或自定义端口,则可能使用动态端口或其他指定端口。
- 打开SQL Server Configuration Manager
- 进入“SQL Server Network Configuration” → “Protocols for [实例名]”
- 查看“TCP/IP”协议是否启用,并检查其IP地址选项卡中的端口号
- 记录下实际监听的端口(如非1433)
在Windows防火墙中开放相应端口
如果SQL Server运行在Windows系统上,需在防火墙中添加入站规则允许外部访问MSSQL端口。
- 打开“控制面板”→“Windows Defender 防火墙”→“高级设置”
- 点击“入站规则”,选择“新建规则”
- 规则类型选择“端口”,下一步选择“TCP”,输入对应端口号(如1433或自定义端口)
- 允许连接,应用范围可设为域、专用或所有网络
- 给规则命名,例如“MSSQL Port 1433”
检查服务器网络与安全组(云环境)
若MSSQL部署在云服务器(如阿里云、腾讯云、AWS等),还需配置安全组策略。
立即学习“PHP免费学习笔记(深入)”;
- 登录云平台管理控制台
- 找到对应服务器实例的安全组设置
- 添加入站规则:协议TCP,端口1433(或实际使用的端口),源IP可根据需要设为具体IP段或0.0.0.0/0(仅测试用)
- 保存规则并确认生效
测试网络连通性
完成防火墙配置后,从PHP所在服务器测试是否能访问MSSQL端口。
- 使用telnet命令测试:telnet
1433 - 若连接失败,说明网络或防火墙仍有拦截
- 也可使用PowerShell的Test-NetConnection命令:Test-NetConnection -ComputerName
-Port 1433
确保PHP连接MSSQL的网络畅通,核心在于明确端口、开启防火墙规则、检查云安全策略并验证连通性。基本上就这些,不复杂但容易忽略细节。











