Wednesday, October 23, 2013

Exchange Server 2013 OWA throws the error: “Error: Your request can't be completed right now. Please try again later.”

Before I begin, let me state that I doubt many others will experienced the same issue I had even though the error message:

Error: Your request can't be completed right now. Please try again later.

… appears quite frequent when searched but none of the solutions fixed my issue.  To save others from going through all of the troubleshooting steps I went through myself as well as with a Microsoft support engineer, what ended up fixing my issue was to treat the server as if I’ve lost it and had to perform a recovery install with the:

Setup /m:RecoverServer /IAcceptExchangeServerLicenseTerms

… command.  There are many articles and blog posts out there demonstrating a recovery install so I’ll just list out the basic steps that I did:

  1. Deploy a new Windows Server 2012 server and don’t join it to the domain
  2. Configure the same drives and letters as the existing Exchange Server 2013
  3. Copy the Exchange databases over to the new server maintaining the same drive and path
  4. Copy the prerequisites required for Exchange over to the new server
  5. Copy the installed Exchange Server 2013 Cumulative Update package (in my case CU2) to the new server
  6. Export the public certificate used for OWA and other services to a new server
  7. Document where Exchange is installed (this information can be found via ADSIEdit by navigating to CN=Ex-15,CN=Servers,CN=First Administrative Group,CN=Administrative Groups,CN=First Organization,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=Contoso,CN=Local and opening the CN=EX-15 object then viewing the properties of the msExchInstallPath attribute.
  8. Shutdown the existing Exchange Server 2013 server (we will not start this server back up again so make sure you’ve copied what you need off of it)
  9. Reset the old Exchange server’s computer account
  10. Assign the new Exchange server’s IP to be the same as the problematic one
  11. Change the name of the new server to the problematic Exchange server’s name and restart
  12. Join the new renamed server to the domain
  13. Install the prerequisites for Exchange Server 2013 (the downloaded packages and Roles and Features via PowerShell)
  14. Using the same CU2 package, run the command Setup /m:RecoverServer /IAcceptExchangeServerLicenseTerms

image

Once the install is complete, restart the server, log into ECP, mount the IS store, reconfigure the virtual directories (i.e. OWA, OAB, etc), review the event logs, then test the services.  This fixed the issue I had as the Microsoft engineer suspected that here was some file, handler mapping, or a component that wasn’t functioning properly.

With the solution out of the way, I’m going to include the troubleshooting steps below:

Problem

You have a new Exchange Server 2013 deployment (all roles on the same server) with CU2 installed in the environment and while testing OWA, you notice the following error when you attempt to read the content of an email:

Error: Your request can't be completed right now. Please try again later.

image

Composing new emails and sending it outbound appears to work properly:

image

However, browsing the contents of the sent email exhibits the same error:

image

Clicking on the Drafts node display the following:

Your request can’t be completed right now. Please try again later.

There are no items to show in this view.

image

Troubleshooting Steps Performed

The event logs do not show any relevant error messages.

Attempting to remove the net.pipe binding on the Site Bindings of Exchange Back End site in IIS:

image

… as per the following blog post:

http://gaurang-microsofttechnology.blogspot.com/2013/08/error-your-request-cant-be-completed.html

image

image

image

… does not correct the issue.  Note that I’ve confirmed with with a Microsoft engineer that there is no harm in removing this as it’s not used by OWA.

Checking the Port 444 certificate binding shows the default self signed certificate which was confirmed by Microsoft that it is ok for the Exchange Back End site in IIS.

Checking all of the IIS permissions as per the following KB:

Default Settings for Exchange Virtual Directories
http://technet.microsoft.com/en-us/library/gg247612.aspx

… appear to be fine.

Reinstalling the:

Windows Process Activation Service

  • Process Model
  • Configuration APIs

image

… does not fix the issue.

Trying to rerun the CU2 update does not work as you won’t be able to click the Next button to start the upgrade.  Running CU2 with setup /m:upgrade works but does not fix the issue.

Browsing the IIS logs in the folder:

C:\Program Files\Microsoft\Exchange Server\V15\Logging\HttpProxy\Owa

image

… and opening the latest log after mimiking the issue in OWA you noticed the following lines created:

2013-10-23T02:04:42.337Z,ebcea5c9-fff5-421b-a200-aaef3c04090a,15,0,712,12,,Owa,webmail.contoso.bm,/owa/ev.owa2,,FBA,True,contoso\hugh.nevile,,Sid~S-1-5-21-788572559-3134175131-1749204635-1116,Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; chromeframe/30.0.1599.101),199.172.202.68,BM1-AZIM-40-001,200,200,,GET,Proxy,bm1-azim-40-001.contoso.local,15.00.0712.000,IntraForest,WindowsIdentity,Database~2ea1e285-a27c-4183-9931-dad6075ed100~~10/23/2013 2:13:42 AM,,,0,810,1,,1,0,,0,,0,,0,0,59951.0693,0,,,,3,1,59951,1,59958,0,59956,2,3,4,59959,?ns=PendingRequest&ev=PendingNotificationRequest&UA=0&cid=23bef3f4-905a-4782-b4ce-b1e3284f5d96&X-OWA-CANARY=1Rm53J0O10qf83-QL8VTQJ4jmRqnndAIvI239N21LeirqJbvhalTBvn7ONLGfv5yrj94xD4axCg.,,OnBeginRequest=0;,HttpException=ClientDisconnect;
2013-10-23T02:04:42.384Z,a1aefcad-d10a-43e0-8b66-301e1100eaaa,15,0,712,12,,Owa,webmail.contoso.bm,/owa/service.svc,FindConversation,FBA,True,contoso\hugh.nevile,,Sid~S-1-5-21-788572559-3134175131-1749204635-1116,Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0),199.172.202.68,BM1-AZIM-40-001,405,405,,POST,Proxy,bm1-azim-40-001.contoso.local,15.00.0712.000,IntraForest,WindowsIdentity,Database~2ea1e285-a27c-4183-9931-dad6075ed100~~10/23/2013 2:14:42 AM,,,875,1293,1,,5,0,,0,,0,,0,0,15.5942,0,1,0,2,0,0,0,0,6,0,1,3,3,8,11,?action=FindConversation&UA=0,,OnBeginRequest=5;,WebExceptionStatus=ProtocolError;ResponseStatusCode=405;WebException=System.Net.WebException: The remote server returned an error: (405) Method Not Allowed.    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)    at Microsoft.Exchange.HttpProxy.ProxyRequestHandler.<>c__DisplayClass20.<OnResponseReady>b__1e();
2013-10-23T02:05:31.649Z,c2614a6e-8846-4b55-9dc8-139e1cc9601e,15,0,712,12,,,,,,,,,,,,,BM1-AZIM-40-001,,,,,,,,,,,,,,,,,,,,,,,,,,600038.8438,,,,,,,,,,,,,,,,,,S:ActivityStandardMetadata.Action=GlobalActivity;I32:ADS.C[UNINSTR]=1;F:ADS.AL[UNINSTR]=4.7919,
2013-10-23T02:05:43.006Z,44349282-87e7-4520-92ad-aeca244490f8,15,0,712,12,,Owa,webmail.contoso.bm,/owa/ev.owa2,,FBA,True,contoso\hugh.nevile,,Sid~S-1-5-21-788572559-3134175131-1749204635-1116,Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; chromeframe/30.0.1599.101),199.172.202.68,BM1-AZIM-40-001,200,200,,GET,Proxy,bm1-azim-40-001.contoso.local,15.00.0712.000,IntraForest,WindowsIdentity,Database~2ea1e285-a27c-4183-9931-dad6075ed100~~10/23/2013 2:14:42 AM,,,0,810,1,,1,0,,0,,0,,0,0,60606.254,0,,,,7,1,60581,3,60595,1,60593,4,5,6,60597,?ns=PendingRequest&ev=PendingNotificationRequest&UA=0&cid=23bef3f4-905a-4782-b4ce-b1e3284f5d96&X-OWA-CANARY=1Rm53J0O10qf83-QL8VTQJ4jmRqnndAIvI239N21LeirqJbvhalTBvn7ONLGfv5yrj94xD4axCg.,,OnBeginRequest=0;,HttpException=ClientDisconnect;
2013-10-23T02:06:09.245Z,2d027367-cd3a-40b0-8634-5c74a033db5b,15,0,712,12,,Owa,webmail.contoso.bm,/owa/ev.owa2,,FBA,True,contoso\torgeir.dagsleth,,Sid~S-1-5-21-788572559-3134175131-1749204635-1113,Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/536.30.1 (KHTML  like Gecko) Version/6.0.5 Safari/536.30.1,199.172.240.98,BM1-AZIM-40-001,200,200,,GET,Proxy,bm1-azim-40-001.contoso.local,15.00.0712.000,IntraForest,WindowsIdentity,Database~2ea1e285-a27c-4183-9931-dad6075ed100~~10/23/2013 2:10:49 AM,,,0,1140,1,,1,0,,0,,0,,0,0,319723.4178,0,,,,4,0,319712,1,319719,0,319717,2,2,3,319720,?ns=PendingRequest&ev=PendingNotificationRequest&UA=0&cid=ab24e4be-32f9-48f2-877c-cdaf1dd7c816&X-OWA-CANARY=KbqlV02F5EObilbXWME5wiHF9AOHndAIHbXU9aRJUWoCtt2QdtBS3st9SK8UzEhXxw_QjQWdkDo.&n=hn3x0v2p,,OnBeginRequest=0;,
2013-10-23T02:06:30.243Z,66e7d747-37a5-4909-acf4-a8afbf440e7a,15,0,712,12,,Owa,webmail.contoso.bm,/owa/ev.owa2,,FBA,True,contoso\torgeir.dagsleth,,Sid~S-1-5-21-788572559-3134175131-1749204635-1113,Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0; Touch),199.172.240.98,BM1-AZIM-40-001,200,200,,GET,Proxy,bm1-azim-40-001.contoso.local,15.00.0712.000,IntraForest,WindowsIdentity,Database~2ea1e285-a27c-4183-9931-dad6075ed100~~10/23/2013 2:11:09 AM,,,0,1706,1,,1,0,,0,,0,,0,0,320128.994,0,,,,3,1,320115,4,320124,0,320123,1,2,3,320125,?ns=PendingRequest&ev=PendingNotificationRequest&UA=0&cid=d346ff16-b3cd-4655-9a88-705154896893&X-OWA-CANARY=HQjKAb7cQUqZYxo77UNQ2sZzVEyGndAIaL8fK3fa16q8-KVMLXheqc4LBrRis4iMT7u7NPQS2Zc.,,OnBeginRequest=0;,

image

**Sorry about the word wrap but the lines are supposed to look like what is shown in the screenshot.

The output we’re interested in is actually the following:

WebExceptionStatus=ProtocolError;ResponseStatusCode=405;WebException=System.Net.WebException: The remote server returned an error: (405) Method Not Allowed.    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)    at Microsoft.Exchange.HttpProxy.ProxyRequestHandler.<>c__DisplayClass20.<OnResponseReady>b__1e();

To fix the error in the logs, perform the following:

Prior to making any changes to IIS, it is recommended to use the following command to backup the site settings first:

%windir%\system32\inetsrv\appcmd.exe add backup "My Backup Name"

The following is an example:

%windir%\system32\inetsrv\appcmd.exe add backup "IIS-Backup-10-22-2013"

The above command will create a folder in the following folder:

C:\Windows\system32\inetsrv\backup

image

After reviewing all the settings with the Microsoft engineer I was working with noticed that the environment with the issue was missing some Handler Mappings for the Default Website:

image 

The following is another environment I have access to and note that the following 3 Handler Mappings is missing:

  1. svc-Integrated-4.0
  2. svc-ISAPI-4.0_32bit
  3. svc-ISAPI-4.0_64bit

… are missing:

image image

What ended up bringing the missing handler back was rerunning the prerequsites PowerShell cmdlet (this is for a server with all the roles installed, go to the following URL to find the cmdlets for other configurations http://technet.microsoft.com/en-us/library/bb691354(v=exchg.150).aspx#WS2012MBX):

Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation

… close the IIS manager then execute iisreset command.  This did not fix my issue but probably nice to know for other environments.

We went on to try and recreate the web services directories with the following cmdlets:

Remove-WebServicesVirtualDirectory -Identity "ServerName\EWS (Default Web Site)"

Remove-WebServicesVirtualDirectory -Identity "ServerName\EWS (Exchange Back End)"

New-WebServicesVirtualDirectory -Server "ServerName" -WebSite "Default Web Site"

New-WebServicesVirtualDirectory -Server "ServerName" -WebSiteName "Exchange Back End" -role:mailbox

This did not fix the issue so we then tried to recreate the OWA virtual directories with the following cmdlets:

Remove-owavirtualdirectory -Identity "ServerName\owa (Default Web Site)"

Remove-owavirtualdirectory -Identity "ServerName\owa (Exchange Back End)"

New-owavirtualdirectory -SERVER "ServerName" -WebSite "Default Web Site"

New-owavirtualdirectory -SERVER "ServerName" -WebSiteName "Exchange Back End" -role:mailbox

We also went ahead to check the server component’s state with the cmdlet:

Get-ServerComponentState

… and all of them checked out ok.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

It was unfortunate that after 6 hours on a call with Microsoft, the engineer wasn’t able to fix it but I did appreciate the effort he put in.  Hope this helps anyone out there who may come across such an issue.

6 comments:

Anonymous said...

This is very screwed up that you had to reinstall the server. Microsoft SUCKS.

Moisés Abrantes said...

Sorry , I do not speak English.
I had the same problem and it was related to . NET FRAMEWORK 3.5 installed on IIS during the investigation of a problem related to the integration with Exchange Online site. To resolve completely removed . . NET Framework 3.5 and 4.5 , I entered the Event Handler and deleted the mappings and then reinstalled and everything is working again .

of course it was not so simple because when I removed the . NET Framework 3.5 and IIS 4.5 it also removed the framework of the machine and when the machine rebooted again only with the command prompt . To resolve follow the procedures this blog

When the machine came back with the graphical interface almost nothing worked so I got a clean installation of Windows 2012 and performed these procedures to install all roles and features patterns ( http://chall32.blogspot.com.br/2012/10/clone- windows- 2008r2 - installed- roles.html ) , after installing the machine was normal and just installed the framework 4.5 and the dependencies for the exchange again.

Visit our blog www.imago.com.br / blog

Anonymous said...

I had this problem as well and i did fix it without reinstall.

The rights of the following files in "C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys" where fucked.

Changed owner to administrator en reapply inherit security.

Faisal said...

Fixed the issue using steps from below link:

http://www.techieshelp.com/exchange-2013-request-cant-completed-right-now/

Essie99xpe Aguilar451nc said...

I would like to share with you my experience, I went to www.vinhugo.com to buy a key, to my surprise, their attitude is very good, but the key work is normal, there is very little money I spent, very happy the first purchase and recommend it to you.

Cristian Nobrega said...

Check the Exchange Back End on IIS, the OWA virtual directory must have anonymous permissions enabled.