Exchange2013提示“出现意外错误,无法处理您的请求”处理方案

前几天公司海外站点的Exchange Sever 2013出了点问题,Outlook用户可以正常连接到Exchang server进行邮件收发,脱机通讯簿、activesync等也都正常,唯独通过WEB访问OWA和ECP的时候,输入用户名和密码,点击登录验证完用户名密码后,开始跳转至邮箱的过程中会清楚的看到“正在打开您的邮箱,正在处理。。。”,但是最后就会提示“发生意外错误,无法处理你的要求”,点击“详细信息”会看到类似于“X-OWA-Error: System.NullReferenceException”或者“X-OWA-Error: microsoft.exchange.data.storage.connectionfailedtransientexception”等字样。无论是在客户端还是Exchange sever本身都是同样的问题。另外有意思的问题是Exchange Server有BJ和HK 两个站点,BJ一切正常,出问题的只是HK站点。

看到这里有经验的小伙伴都会首先去检查IIS的OWA虚拟目录或者后端用户所在的Mailbox数据库。在Exchange server中打开“事件查看器”,并没有发现和Exchange和IIS相关的明显错误日志,甚至其他的应用程序等日志也没有明显的错误。Outlook可以正常收发邮件,所以基本可以排除mailbox的问题,不过还是通过eseutil.exe检查了数据库的状态—“clean shutdown”,那也可以排除数据库的问题喽。接下来就是OWA了,去检查OWA的log, Exchange安装目录的“\v15\Logging\OWA\ServerTrace”中

at Microsoft.Exchange.Clients.Common.Canary15..ctor(String logonUniqueKey)

at Microsoft.Exchange.Clients.Common.Canary15Cookie.TryCreateFromHttpCookie(HttpCookie cookie, String logonUniqueKey, Canary15Profile profile)

at Microsoft.Exchange.Clients.Common.Canary15Cookie.TryCreateFromHttpContext(HttpContext httpContext, String logOnUniqueKey, Canary15Profile profile)

at Microsoft.Exchange.Clients.Owa2.Server.Core.OwaRequestHandler.InternalOnPostAuthorizeRequest(Object sender)

at Microsoft.Exchange.Clients.Owa2.Server.Core.OwaRequestHandler.OnPostAuthorizeRequest(Object sender, EventArgs e)

at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

这个过程显示的大概是exchange的前端cas和后端mailbox之间创建连接请求的过程。这时大家可能想到的是前端CAS和后端Mailbox的网络通信是否存在问题?

由于目前cas和mailbox是两台all in one角色(有dag),cas和mailbox通信基本是发生在同一台服务器上,且网络没有做过任何调整,网络问题基本也可以排除了。

接下来能想到的无非就是OWA虚拟目录或许出问题了,动手重置OWA虚拟目录后,问题依旧。。。最后终极杀手锏找了一台服务器重新安装一台exchange2013,不做任何更改直接创建用户和数据库,然后在exchange本机尝试访问owa,竟然出现同样的问题,无语了。。。

这时候可以确定问题不是exchange server本身造成的。。。。

既然不是exchange的问题,那唯独和exchange有联系的就是域控dc服务器了,可是从开始出问题就检查过AD站点的复制状况,并没有出现明显错误。

这时候想起曾经看到过国外一哥们类似问题,最后他向微软开启了一个case支持,微软用了3天15小时进行排查,最后竟然是通过修改ADSI编辑器中cas属性来解决的,整个好也是也OWA无法访问相关的。由于之前不能排除Exchange本身的问题,并且这问题很难让人和域控联系起来,因此一直没敢尝试。现在既然能确定问题和dc有关系了,那这个解决方案还是值得去尝试的。。。

具体操作如下:

1、 由于ADSI内容涉及到整个的活动目录内容,操作之前一定要做好备份,首先通过Windows Server Backup将整个dc做了一次完整备份,以备后患。(这里估计又要被鄙视了,偌大的一个公司竟然没有完善的备份系统,o(╯□╰)o)

2、 打开ADSI编辑器,连接到【配置】,然后找到【CN=Services】-->【CN=Microsoft Exchange】 -->【CN=<你的exchange组织名称>】-->【CN=Client Access】,然后右键点击选择【属性】,打开属性编辑器窗口,在【属性编辑器】选项卡中找到“msExchCanaryData”字样的属性值,然后清空(可能会有0-n多项)

这里我们将这几个值的内容再次复制到记事本中进行保存,这样可以起到备份双保险作用,慎重操作,毕竟是生产环境。

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

4、 重启exchange服务器

待Exchange服务器重启完成后进行测试,海外用户OWA和ECP恢复正常,其他outlook功能也正常。北京总部用户也一切正常。问题终于解决!

最后问题是解决了,但导致的原因并没有真正找到,希望看到这篇文章并熟知exchange2013的小伙伴来一起讨论。。。。

关于Exchange2013,刚刚一年多的时间已经有 CU5的更新了,无奈让人感慨Exchange2013架构的改变让人耳目一新,同时也带来了N多问题,真心希望Exchange2013的命运不要像Exchange2007那样。。。( ╯□╰ )

解决过程中咨询了多个技术好友,由于Exchange2013是新产品并没有太普及,小伙伴们也都没有遇到过,在此感谢各位!同时感概自己无意中竟然成了先吃螃蟹的人。。。( ╯□╰ ),再者公司没有购买微软技术支持服务,最后想通过MVP通道向微软寻求技术支持,怎奈需要1个工作日的响应时间,最终也没有用上MVP的这点儿福利。。。( ╯□╰ )

(0)

相关推荐

  • Exchange2000系统建设及规划

    第一章第二章 Exchange 2000 安装和设置第一节 安装前的准备工作1. 检查服务器硬件配置2. 检查服务器是否是已经安装了AD的域控制器(DC)3. 检查服务器的网卡及网络设置4. 检查DNS对应是否设置完成5. 检查服务器的IIS中是否安装好了SMTP service 和NNTP service6. 检查是否安装Windows2000 service pack 17. 服务器页面文件设置为较大值第二节 安装Exchange 20001. 注意,将Exchange 2000安装在空间较

  • Windows Server 2008 R2上部署Exchange Server 2010图文教程

    这两个产品可谓是09年下半年微软推出的重头产品,均为64位架构,而且其功能和性能远远超出了其早期版本,在此不再对这方面的内容做过多的描述. Windows Server 2008 R2和Exchange Server 2010的结合是"完美"的.对于Exchange Server 2010的前一版本Exchange Server 2007来讲,只能运行在Windows Server 2008操作平台上,因此,想要在Windows Server 2008 R2部署Exchange 看来只

  • Exchange2013提示“出现意外错误,无法处理您的请求”处理方案

    前几天公司海外站点的Exchange Sever 2013出了点问题,Outlook用户可以正常连接到Exchang server进行邮件收发,脱机通讯簿.activesync等也都正常,唯独通过WEB访问OWA和ECP的时候,输入用户名和密码,点击登录验证完用户名密码后,开始跳转至邮箱的过程中会清楚的看到"正在打开您的邮箱,正在处理...",但是最后就会提示"发生意外错误,无法处理你的要求",点击"详细信息"会看到类似于"X-OWA-

  • Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法

    一.发现问题 在尝试编辑博客站点的Wordpress主题时,突然发现博客站点无法连接:刷新后提示"建立数据库连接错误"之类的错误.自然想到是mysql可能出错了,所以就登陆了VPS主机,尝试启动mysql服务,但是提示failed. 二.解决方法 1.打开/var/log/mysql/error.log文件,查看出错日志.在阅读日志时发现第一条错误提示是:[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrad

  • 为什么ASP中执行动态SQL总报错误信息?提示语句语法错误

    问:为什么ASP中执行动态SQL总报错误信息?提示语句语法错误 答: 有时候写ASP用conn.execute(sql)查询.更新.插入Access数据库数据时,明明正确的语句却往往会显示sql语句错误,相当恼火,特进行了归纳,可适当为字段添加"["."]"解决: 复制代码 代码如下: 例1:select * from a  如出现错误,可改为:select * from [a]  例2:UPDATE [user] SET password = '"&am

  • asp提示Server 对象 错误 ASP 0178 : 80070005

    尤其是刚安装的那些组件,需要手工设置下权限,因为为了安全考虑,权限限制的很低.大家可以参考下面的方法设置下. 错误提示: Server 对象 错误 'ASP 0178 : 80070005' Server.CreateObject 访问错误 ../asp.asp,行 123 检查权限时,对 Server.CreateObject 的调用失败.拒绝对此对象的访问. 错误如提示,存在以权限. 解决方法: 1. 调用"server.createObject("mssearch.applica

  • Nodejs下用submit提交表单提示cannot post错误的解决方法

    <span style="font-size:18px;"><form action="/registOK" method="get"> <p>用户名:<input type="text" id="userName" name="userName"></p> <p>密码:<input type="pa

  • IIS无法启动提示“服务没有及时响应启动或控制请求”的解决方法[图解]

    于是,从控制面板的中打开"管理工具"-"服务",检查发现和IIS相关的服务"World wide web publishing service"没有启动,试图启动该该服务时,弹出"错误:127 找不到指定的程序"的错误提示.尝试了很多中方法,包括查看80端口是否被其它程序占用,并启动IIS相关的服务等,都解决不了问题,折腾老半天最后发现竟然是微软自家的补丁导致的. 解决方法很简单:卸载删除跟IIS相关的几个漏洞安全更新补丁即可

  • 运行iis提示服务没有及时响应启动或控制请求的解决方法

    服务没有及时响应启动或控制请求的解决方法小结 先重启,重启还是不行就是服务被禁用了,依次开启 eventlog服务,"WorldWideWebPublishing"服务,然后iis一般就可以正常了.如果还是不行,可以参考下面的方法,逐一尝试. 1.系统环境:Windowsxp+sp2,II5.0 故障现象:上午把IIS服务停止以后,程序长时间没响应,通过任务管理器关闭,启动时提示"服务没有及时响应启动或控制请求",重启计算机未能解决. 解决办法:在Internet信

  • 服务器远程连接提示由于协议错误,客户端无法连接到远程计算机

    今天远程连接服务器的时候提示 中断远程桌面连接 --------------------------- 由于协议错误,客户端无法连接到远程计算机. 请请重新连接到远程计算机.如果客户端依旧无法连接,请跟网络管理员联系. 用远程桌面连接服务器时报错:由于协议错误,会话将被中断.请重新连接到远程计算机. 本以为是服务器的一般性错误,以为重新启动一下服务器就能解决问题,于是让机房重启了一下服务器.可无论怎么试问题仍旧,再用其它电脑试连接,还是一样的问题,无奈只好让人去机房装了个pcAnywhere不甘

  • 解决Goland 提示 Unresolved reference 错误的问题

    之前一直正常的项目,莫名其妙的 database/sql 包下的方法.结构体等等IDE都无法识别,出现一堆Unresolved reference错误提示,但包导入路径可以正确定位,而且项目运行也正常,其他包都正常,另一个项目下同样使用sql包也正常. 折腾半天都没用,不想重建项目重装IDE太麻烦,最后尝试最简单的升级到 golang 1.12.5 重启Goland后就正常了,应该和版本没有关系,重装下golang就行,估计是Goland文件索引的问题,重装golang后会重建索引就能正常识别了

  • asp页面提示Response 对象 错误 ASP 0156 : 80004005 HTTP 头错误

    其实这类问题就是因为缓存问题,大家可以参考下面的方法解决: 有些ASP页面第一次打开的时候会出现Response 对象 错误 'ASP 0156 : 80004005' HTTP 头错误,但刷新后又正常了,解决方法如下 复制代码 代码如下: Response.Buffer = True '应该是这行,去掉就ok '如果还不行就把 Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Res

随机推荐