Server Error in '/owa' Application after Exchange 2016 CU11 Update

Marlon Chung
Marlon Chung used Ask the Experts™
on
After upgrading from Exchange 2016 CU10 to CU11, I can no longer access OWA or ECP and I get the following in my web browser:

I have looked at the following but it didn't apply to me, Exchange 2016 ECP throws Error, Posted on 2018-04-17

Server Error in '/owa' Application

Could not find a part of the path 'c:\program files\microsoft\exchange server\v15\frontend\httpproxy\owa\auth\15.1.1531\themes\resources\logon.css'.
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.DirectoryNotFoundException: Could not find a part of the path 'c:\program files\microsoft\exchange server\v15\frontend\httpproxy\owa\auth\15.1.1531\themes\resources\logon.css'.

Source Error:

The source code that generated this unhandled exception can only be shown when compiled in debug mode. To enable this, please follow one of the below steps, then request the URL:

1. Add a "Debug=true" directive at the top of the file that generated the error. Example:

  <%@ Page Language="C#" Debug="true" %>

or:

2) Add the following section to the configuration file of your application:

<configuration>
   <system.web>
       <compilation debug="true"/>
   </system.web>
</configuration>

Note that this second technique will cause all files within a given application to be compiled in debug mode. The first technique will cause only that particular file to be compiled in debug mode.

Important: Running applications in debug mode does incur a memory/performance overhead. You should make sure that an application has debugging disabled before deploying into production scenario.

Stack Trace:


[DirectoryNotFoundException: Could not find a part of the path 'c:\program files\microsoft\exchange server\v15\frontend\httpproxy\owa\auth\15.1.1531\themes\resources\logon.css'.]
   System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +271
   System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) +1217
   System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) +144
   System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost) +174
   System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost) +84
   Microsoft.Exchange.Clients.Owa.Core.<>c.<InlineCss>b__48_0(String fullFilePath) +26
   Microsoft.Exchange.Clients.Owa.Core.OwaPage.InlineResource(String fileName, String partialFileLocation, ResourceCreator createResource, Dictionary`2 resourceDictionary) +301
   Microsoft.Exchange.Clients.Owa.Core.OwaPage.InlineCss(String fileName) +194
   Microsoft.Exchange.Clients.Owa.Core.OwaPage.InlineCss(ThemeFileId themeFileId) +56
   ASP.auth_logon_aspx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) +715
   System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +117
   System.Web.UI.Page.Render(HtmlTextWriter writer) +39
   System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) +79
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +8753
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Jose Gabriel Ortega CastroTop Rated Freelancer on MS Technologies
Awarded 2018
Distinguished Expert 2018

Commented:
It looks like is missing a file (a CSS file) here's my whole folder
resources.zip

Troubleshoot file by file.
1st add the missing CSS
if required another archive

(this resource is from an exchange 2019, but... they all uses the same CSS file so no problem).

Author

Commented:
I have already checked and the file logon.css is already in that directory. I also ran the following script UpdateCas.PS1 and the same issue appears.
Jose Gabriel Ortega CastroTop Rated Freelancer on MS Technologies
Awarded 2018
Distinguished Expert 2018

Commented:
Did you check that the files already exists?
also, running the updatecas.ps1 will fix the issue, (or it should have), did you run it as administrator? (the ps console?)

Author

Commented:
Yes, the file exists and I ran the script in admin mode
With the help of Valentina Perez, we renamed Could not find a part of the path
'c:\program files\microsoft\exchange server\v15\frontend\httpproxy\owa\auth\15.1.1591\themes\resources\logon.css'.
to
'c:\program files\microsoft\exchange server\v15\frontend\httpproxy\owa\auth\15.1.1531\themes\resources\logon.css'.

Restarted IIS and now, ECP and OWA are working.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial