日期:2014-05-17  浏览次数:20429 次

非常奇怪的一个win7+iis+sql2005的问题,完全有违逻辑!
conn.open "Provider=SQLOLEDB;server=192.168.0.102;database=jssoft;uid请问为什么在连接字符串的地方

【输入公网的ip却在公网上或者内网上都不能访问数据库】,而在连接字符串的时候【填内网的ip却就能在公网内网都能访问】! 

远程telnet 公网ip 是通的我的平台是win7 建的iis +sql2005  iis与sql2005都在通以电脑上


感觉问题就在iis 上  因为用其他建议asp服务器连接串填入公网ip内外网都能访问,奇怪的是在iis中连接串填入内网ip公网能访问,填公网居然内网外都不能访问!! 我的意思不是公网不能访问数据库 按照道理公网要访问conn.open "Provider=SQLOLEDB;server=192.168.0.102;database=jssoft;uid这里应该填写公网的ip但是却不能填公网只能填内网的ip公网才能访问,奇怪!!!!
------解决方案--------------------
你访问网站是访问的WEB的公网地址,而IIS访问的数据库是在你本机,所以应该是用内网数据库IP地址。 
------解决方案--------------------
感覺問題存在歧義.


先檢查公網的防火牆是否開放對應的SQL Server端口,如SQL Server默認端口是1433.