这里是普通文章模块栏目内容页
Exchange 2013 OWA & ECP 发生错误 500意外错误

现象症状】

访问 OWA 出现以下错误:

访问 ECP出现以下错误:

邮箱服务器事件日志中记录以下错误:

日志名称: Application

来源: MSExchange Control Panel

事件 ID: 4

日志名称: Application

来源: MSExchange Common

事件 ID: 4999

 

日志名称: Application

来源: ASP.NET 4.0.30319.0

事件 ID: 1309

    

【排错过程】    

 当第一时间发现故障的时候,首先就检查了用户所在数据库状态是否正常、Exchange CASMBX 服务是否正常,以及通过命令检查组件状态是否正常。    

Get-ServerComponentState ServerName

    以上的检查服务器均处于正常状态,然后去查看用户所在活动数据库Exchange服务器日志,发现服务器记录以下错误:

日志名称:

Application

Application

Application

来源:

MSExchange Control Panel

MSExchange Common

ASP.NET 4.0.30319.0

事件ID:

4999

1309

 通过错误信息基本可以判断是IIS故障导致该问题,最近的变更没有进行过网络的调整,唯一变更是对所有邮箱服务器ClientAccessecpweb.config文件增加参数,使ECP可以正常显示所有OU列表;    

 检查了该台服务器web.config修改没有问题,同时通过google查询以上日志信息在微软论坛找到类似问题,大致的说法是,导致该问题原因是AD Configuration—Services-- Microsoft Exchange,CN=,CN=Configuration,-- Client Access 的 msExchCanaryDataX 属性值错误导致;

 当时查到这个资料后,由于没办法判断环境中的msExchCanaryData 属性值是否是正常的,此值又是一个全局的设置,出现问题的服务器只有一台;便没有在生成环境中,尝试清空此属性值来解决问题;由于该邮箱服务器上同时挂载几个生产数据库,考虑到对用户的使用影响,进行了DAG活动副本的切换,切换数据库承载服务器后,用户访问OWAECP 正常。但是出现此问题的原因还未查出来;    

 之后检查了该服务器IIS安全设置、重定向设置、SSL设置等等,依然没有发现异常;通过重启IIS,Exchange服务、重启服务器、回退ClientAccessecpweb.config文件修改等尝试问题依然存在;不过在重启的过程中发现,重启后,马上进行OWAECP访问测试,是可以正常登录,但几秒后依旧出现同样的问题;    

 对用户的故障虽然解决了,但故障根本原因还未找到,第二天向微软开了CASE查这个问题,在等待微软的答复过程中,又出现了一台邮箱服务器OWA/ECP访问出错的问题,同样的现象与日志记录;这时候,意识到可能真的是由于msExchCanaryData 属性值异常导致,在测试环境中模拟了清空该属性的操作,发现对现有用户的正常使用不会造成影响,清空该值后无需重启服务器,只需重启MSExchangeOWAAppPool应用程序池即可;微软给出的答复也是建议清空msExchCanaryData 属性值来解决此问题

【解决过程】

1.打开ADSI编辑器,连接到【配置】,然后找到【CN=Services】--【CN=Microsoft Exchange】 --【CN=<Exchange组织名称>】--【CN=Client Access】

2.右键点击选择【属性】,打开属性编辑器窗口,在【属性编辑器】选项卡中找到"msExchCanaryData"字样的属性值(可能会有0-n多项)

3.将msExchCanaryDataX 属性值复制并记录至记事本中,以作备份;同时也可对AD进行备份,以作备份

 

4.然后清空msExchCanaryDataX 属性值(可能会有0-n多项),注意这里是清空,不是删除该属性,是清空;

5.打开CAS服务器的IIS管理器,点击【应用程序池】,找到【MSExchangeOWAAppPool】,然后点击右侧窗口的【回收】

6.重新查看msExchCanaryData 属性值,可以看到已经重新生成了msExchCanaryData 属性值

7.验证可以正常登录OWA/ECP

【问题解析】

msExchCanaryData    msExchCanaryData是Exchange 架构扩展过程中创建的属性,msExchCanaryData值是加密的令牌,一般在客户端与服务器端进行OWA,ECP或者其他Web服务时使用    

正常访问流程:

msExchCanaryData01

非正常访问流程:

msExchCanaryData02