We today noticed a bit of a problem on our Exchange 2013 CU2 server, or two actually:
- After logging in to OWA the user just gets a blank page. If you check the source of that page it seems to be some sort of OWA loading script, but nothing shows up. This problem we can live with for now, but the second one is more critical:
- After logging in to ECP the user only gets an IIS error page, displaying a stack trace.
Other services, such as ActiveSync and Outlook connectivity work just fine. OWA and ECP seem to have broken down rather unexpectedly as nothing has been changed/updated in the environment for a good while (honest to god!). KB2880833 was installed a month ago without any problems showing up at that time. These problems have appeared sometime later without any good explanation (no windows updates, no exhange updates, no nothing done on the server since KB2880833).
The server is an Exchange 2013 CU2 (with KB2880833) running on a Windows 2012 server.
When googling around I can only find one related discussion, and the conclusion of that one is not convincing.
Does anyone have any ideas about what to do to fix the below problem?
The error displayed when trying to access ECP reads:
Server Error in '/ecp' Application.
Could not load file or assembly 'Microsoft.Exchange.Security' or one of its dependencies. The system cannot find the file specified.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.Exception Details: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Exchange.Security' or one of its dependencies. The system cannot find the file specified.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. |
Assembly Load Trace: The following information can be helpful to determine why the assembly 'Microsoft.Exchange.Security' could not be loaded.
|
Stack Trace:
|
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18408
The following can be found in the Application Event logs:
- System- Provider
[ Name] ASP.NET 4.0.30319.0
- EventID 1310
[ Qualifiers] 32768
Level 3
Task 3
Keywords 0x80000000000000
- TimeCreated
[ SystemTime] 2014-01-14T19:29:59.000000000Z
EventRecordID 1050164
Channel Application
Computer HQ-MAIL01.contoso.local
Security
- EventData
3008
A configuration error has occurred.
2014-01-14 20:29:59
2014-01-14 19:29:59
157875670aca4d23b9b08d362a1abd40
1
1
0
/LM/W3SVC/2/ROOT/ecp-11-130342013972690726
Full
/ecp
C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp\
HQ-MAIL01
7456
w3wp.exe
NT AUTHORITY\SYSTEM
ConfigurationErrorsException
Could not load file or assembly 'Microsoft.Exchange.Security' or one of its dependencies. The system cannot find the file specified. at System.Web.Configuration.ConfigUtil.GetType(String typeName, String propertyName, ConfigurationElement configElement, XmlNode node, Boolean checkAptcaBit, Boolean ignoreCase) at System.Web.Configuration.Common.ModulesEntry.SecureGetType(String typeName, String propertyName, ConfigurationElement configElement) at System.Web.Configuration.Common.ModulesEntry..ctor(String name, String typeName, String propertyName, ConfigurationElement configElement) at System.Web.HttpApplication.BuildIntegratedModuleCollection(List`1 moduleList) at System.Web.HttpApplication.GetModuleCollection(IntPtr appContext) at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) Could not load file or assembly 'Microsoft.Exchange.Security' or one of its dependencies. The system cannot find the file specified. at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMarkHandle stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName, ObjectHandleOnStack type) at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName) at System.Type.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase) at System.Web.Compilation.BuildManager.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase) at System.Web.Configuration.ConfigUtil.GetType(String typeName, String propertyName, ConfigurationElement configElement, XmlNode node, Boolean checkAptcaBit, Boolean ignoreCase)
https://hq-mail01.contoso.local:444/ecp
/ecp
fe80::54dc:ab18:5381:d77b%19
False
NT AUTHORITY\SYSTEM
105
NT AUTHORITY\SYSTEM
False
at System.Web.Configuration.ConfigUtil.GetType(String typeName, String propertyName, ConfigurationElement configElement, XmlNode node, Boolean checkAptcaBit, Boolean ignoreCase) at System.Web.Configuration.Common.ModulesEntry.SecureGetType(String typeName, String propertyName, ConfigurationElement configElement) at System.Web.Configuration.Common.ModulesEntry..ctor(String name, String typeName, String propertyName, ConfigurationElement configElement) at System.Web.HttpApplication.BuildIntegratedModuleCollection(List`1 moduleList) at System.Web.HttpApplication.GetModuleCollection(IntPtr appContext) at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)
Thanks!