• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

SmarterMail Issue?

Ryan11433

Regular Pleskian
I filed a ticket to SmarterTools about this issue saying

I believe IIS is better but themes are not showing on http://webmail.nukermusic.com but it is working fine on http://webmail.nukermusic.com:9998
In event viewer about those in IIS results are:

Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 12/26/2011 12:54:06 AM
Event time (UTC): 12/26/2011 5:54:06 AM
Event ID: d925ccc18af747f6a01962fa83619c90
Event sequence: 2
Event occurrence: 1
Event detail code: 0

Application information:
Application domain: /LM/W3SVC/5/ROOT-1-129693522309863750
Trust level: Full
Application Virtual Path: /
Application Path: C:\Program Files (x86)\SmarterTools\SmarterMail\MRS\
Machine name: WKS4SERVER2

Process information:
Process ID: 3660
Process name: w3wp.exe
Account name: NT AUTHORITY\NETWORK SERVICE

Exception information:
Exception type: HttpException
Exception message: The file '/App_Themes/Default/CSS/StyleSheet.ashx' is in the special directory 'App_Themes', which is not allowed.
at System.Web.Compilation.BuildManager.ValidateVirtualPathInternal(VirtualPath virtualPath, Boolean allowCrossApp, Boolean codeFile)
at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
at System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean ensureIsUpToDate)
at System.Web.UI.SimpleHandlerFactory.System.Web.IHttpHandlerFactory2.GetHandler(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath)
at System.Web.UI.SimpleHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path)
at System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)



Request information:
Request URL: http://webmail.nukermusic.com/App_T...16865_8.4.4359.16878&fileMask=Main/&rtl=false
Request path: /App_Themes/Default/CSS/StyleSheet.ashx
User host address: 70.91.150.233
User:
Is authenticated: False
Authentication Type:
Thread account name: NT AUTHORITY\NETWORK SERVICE

Thread information:
Thread ID: 13
Thread account name: NT AUTHORITY\NETWORK SERVICE
Is impersonating: False
Stack trace: at System.Web.Compilation.BuildManager.ValidateVirtualPathInternal(VirtualPath virtualPath, Boolean allowCrossApp, Boolean codeFile)
at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
at System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean ensureIsUpToDate)
at System.Web.UI.SimpleHandlerFactory.System.Web.IHttpHandlerFactory2.GetHandler(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath)
at System.Web.UI.SimpleHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path)
at System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

What am I missing or is it a bug?

SmarterTools said as they are looking into this further it appears that the account that is accessing the MRS folder where the JavaScript files are located is unable to access those files. Running the site within debug - I see that it is receiving a 500 server error for those files. Looking at the permissions of the MRS folder NetworkServices (which the SmarterMail application pool is running under) has access to the folder. I feel that within Plesk, a different account is being used that is not providing sufficient access to the files. Are you aware of which account is used by Plesk to access files? Where Plesk is a third-party software I am unaware of which user account is used.

Please let me know if you are aware of which account is used.
 
Parallels Plesk team did not provide a account name but instead said that it was caused by the fact that application pool that is used by site of Smarter Web Mail (webmail(smwebmail)) was running in Integrated mode. After they have changed it to Classic in IIS the Web Mail started to load with all frames correctly.

I did double check with SmarterTools and they said that switching the Application Pool from integrated over to Classic appears to have everything up and running correctly. Making this change within the Application Pool will not cause a security issue, it simply changes the way that the application pool is used by the site. In this case though - the control panel must need the application pool setup in Classic mode to allow correct functionality.

However if you do have enterprise license with active exchange addon you may experience a issue with login failing without using the port 9998 as you cannot set the port 9998 on Droid device.

I'm going to try to see if I get more information about this and if you know any please do tell me.
 
Last edited:
After contacting Parallels and SmarterTools they still did not provide a solution and I was given information to prove that it is caused by Plesk

HTTP/1.1 404 Not Found
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-Powered-By: ASP.NET
X-Powered-By-Plesk: PleskWin
Date: Wed, 11 Jan 2012 23:55:46 GMT

In order to reproduce this for yourself - Remember to install telnet client then you run

1.Open command prompt
2.telnet webmail.yourdomain.com 80
3.Send the following command (be aware that copying and pasting this is the quickest as the input will not show): ◦OPTIONS /Microsoft-Server-ActiveSync HTTP/1.1
◦Host: mail.yourdomain.com
4.Press enter Twice
5.Review the information given - you should see the same error from Plesk.
 
have you tried using IP bindings in IIS.Just webmail.domain name in webmail(smwebmail) section and check.
 

Similar threads

Back
Top