访问外网时,客户端常因加载kingdee.BOS.SQLDesigner.dll等文件出错。需检查网络映射端口,通过ping和tracert诊断网络,分析可能是防火墙拦截含SQL组件。通过修改客户端和服务器配置文件,绕过防火墙校验,或调整防火墙策略放行含SQL的链接,可解决下载问题,保证客户端正常使用。
经常在外网访问的时候会出现打开客户端一直加载不过去,提示在下载文件【kingdee.BOS.SQLDesigner.dll】【system.data.sqlserverce.dll】发生一些错误,是否继续尝试下载该文件,
需要检查内外网映射端口是否一致,是否有问题,参照https://vip.kingdee.com/questions/8304/answers/11804
在客户端ping 域名 -t持续两分钟,tracert -d 域名查看下PC端网络状况,tracert跟踪过程延迟很大的话说明网络不稳定,需要更换网络进行对比下,如下截图比较稳定,
可以用fidder或wireshark抓包进一步分析,一般是出在出口路由器或防火墙设置上,防火墙策略默认的都是deny拦截,客户端下载的组件,有的组件有SQL字样,导致了组件的下载被拦截。
类似防火墙的过滤规则,检查一下,不要屏蔽含“SQL”字符的链接,或者统一放行含“/k3cloud/”的链接。
4.可以查看本地客户端安装日志,C:\Program Files (x86)\Kingdee\K3Cloud\DeskClient\App_Data,返回结果,说明是有被出口防火墙过滤禁止的,
5.可以在服务器上Cloud安装路径\Program Files (x86)\Kingdee\K3Cloud\WebSite\App_Data\Common.config加了个参数,<add key="EnableAliasDL" value="1"/> 能够跳过校验
6.本地也可以验证,在C:\Program Files (x86)\Kingdee\K3Cloud\DeskClient下新增一个Kingdee.BOS.DeskClient.Shell.exe.config配置文件,然后再重新运行客户端即可,格式如下
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="EnableAliasDL" value="1"/>
</appSettings>
</configuration>
重新运行客户端查看日志,发现基本可以正常更新,第一次时间有点长,需要耐心等待。
上述做法能保证客户端的正常下载安装,是最基本的一个排查方法,如果是在后续的使用过程中有请求链接出现SQL相关字段问题,总而言之最终解决方法需要检查下防火墙的策略。
推荐阅读