云服务器上IIS部署ASP.NET应用和本地部署得到的结果不一样
如题,开发了一个小的ASP.NET Web API 应用,选择了部署环境为腾讯云服务器(Windows Server 2012 R2镜像)以及使用它的Mysql的云数据库,出现了返回数据不一致的情况,下面以一个API的例子的具体情况阐述,如下所示:
出错情况分析:
本地开发调试+本地数据库
本地IIS部署+云数据库
云服务器IIS部署+云数据库
Web.config的连接字符串
<connectionStrings>
<add name="MysqlConnString" connectionString="Data Source=**云数据库公网地址**;Port=**端口**;Initial Catalog=um;User ID=****;password=****;Charset=utf8" providerName="MySql.Data.MySqlClient;"/>
</connectionStrings>
尝试的应对措施
部署的时候一开始是使用传统的文件系统发布,然后把文件夹拷贝到云服务器下再在云下的IIS创建虚拟目录的做法,出现2中第三种这种情况之后换成用Web Deploy包发布,同时尝试在本地IIS也部署这个Web Deploy包,发现本地IIS可以而云端依然不行。
在连接字符串上部署云端的时候改用过云数据库的内网地址也不行,同时在驱动上从代码可以看到是MySQL Connection/NET,也尝试过用odbc的驱动
providerName="System.Data.Odbc;
也不行(其实关于这方面我不太清楚,在云端的win server上只安装成功了Mysql 以及 MySQL Connection/NET驱动,可能有什么欠缺的步骤)程序上应该是没有错误的,否则部署到本地的时候应该报错了,而云服务器也没报错,只是返回数据不一样
在云服务器上是可以通过mysql登陆到云数据库上的,就是云服务器到云数据库之间的连接时可以得
之前怀疑是没有启用加载web.config配置,后来也设置了,依然不行
3.解决方案求指导
所以我现在就有点疑惑了,到底问题出在哪里?是代码上,程序生成、发布、部署上抑或是IIS的配置上。希望可以得到答案或者是类似的经验之谈,菜鸟不胜感激
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果你確定所有配置一樣的情況下,我建議使用調試日誌的形式去找出問題,就在代碼里每執行一段輸出日誌到文件里,然後你才可以看到服務器端的程序到底發生了什麽事