Today i faced an issue in accessing ecp through an admin delegated account and got the below error. I thought of writing up a blog with few general checklists that can be performed if we come across this kind of issues.
Below are the troubleshooting steps that can be performed in this order if we come across issues with accessing the ECP virtual directory.
1) Check if there is any issue with the XAML file type
Find the file located in
C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp\DDI\RemoteDomains.XAML
If you have any staging servers with the same version where it is working just copy this XML file or if you could find this file from the setup just replace with the existing one do an iis reset and see the results
2) Check on the Application Pools to view whether OWA and ECP Application Pool is running on .NET Framework v4.0. It maybe the incompletely or corrupted installation of Framework that causes this error.
You might come across the above if you recently made any recent upgrade or its a new fresh installation.
If that’s the case try to run the following command as Administrator:
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
Change the MSExchangeECPAppPool from .NET Framework from v4.0 to v2.0. Then restart IIS and check the results.
3) Check the bindings of the default website to confirm to Microsoft recommended settings:
({http port 80 *}{http port 80 127.0.0.1}
{https port 443 *}{https port 443 127.0.0.1})
4) If none of the above steps works try recreating the ecpvirtualdirectory and see the results
In EMS, please run the following command:
Remove-Ecpvirtualdirectory –Identity “CAS\Autodiscover (xxxxx)”
New-Ecpvirtualdirectory –Identity “CAS\Autodiscover (xxxxx)”
There are more cases where even recreating the ECP virtual directory or any virtual directory will still cause this same error 500 unexpected error
This is because of the stale entries present in the ecp objects as well as in the IIS metabase.
If recreating corresponding affected VD doesn’t help you then try the below steps
Remove the newly created ECP virtual directory
Remove-Ecpvirtualdirectory –Identity “CAS\ECP(xxxxx)”
5) Remove the ecp objects in AD container
a. Open ADSIEDIT.msc, locate:
Configuration–>CN=Services–>CN=Microsoft Exchange–>CN=Organization–>CN=Administrative Groups–>CN=Exchange Administrative Groups–>CN=Servers–>CN=Exchange–>CN=Protocols–>CN=HTTP
b. In the right pane, please check whether the CN=ECP(xxx) is present. If its present you can remove it.
6. Delete the autodsicover in metabase
a. Download the IIS 6.0 Resource Kit Tools from the following link:
b. Install it on the CAS server. Open the “Metabase Explorer” (Open it in elevated mode)
c. Locate: Exchange -> LM -> W3SVC -> 1 -> ROOT.
d. Check if you are able to find ECP virtual directory is present, if so, remove it.
7. After that, try recreating the ECP virtual directory and see the results
New-Ecpvirtualdirectory –Identity “CAS\Autodiscover (xxxxx)”
Most likely after following the above troubleshooting steps the affected ECP VD should start working. You can also follow the same troubleshooting steps if in case you are getting the same error in accessing the OWA,EAC ,Autodiscover and PowerShell Virtual Directories.
Hope this article is helpful
Thanks
Sathish Veerapandian
MVP – Exchange Server
Remove-Ecpvirtualdirectory –Identity “CAS\Autodiscover (xxxxx)”
Is the xxxxx going to be replaced by something?
LikeLike
yes that’s your VD name
LikeLike
this completely broke my ecp vd… It removed the VD alright and confirmed it is gone from ADSIEdit. Now it won’t re-create. When I tell it to create a new ecp directory it says the vd ecp already exists under servername/DefaultWebSite. If i tell it to Set ecp vd it tells me it already exists!
LikeLike
This is because of some stale entries present on the IIS metabase
look inside the IIS Metabase IIS XML file (located in c:\Windows\System32\inetsrv\config\applicationHost.config
manually remove the entries from the file, I then reboot the server and then recreate
LikeLike