CMO - Missing handler files

Vote:
 

I've setup CMO 7 locally for testing purposes, but I am getting 404 errors when the site request the various .axd handler files it requires.

 

i.e. cmo/clientbin/cartlicense.axd?ID=xx&Key=xx 404 (Not Found) 

cmo/thumbhandler.axd?pageid=3&modified=1%2f14%2f2014+10%3a13%3a07+AM&type=Lpo&width=218&height=161 404 (Not Found) 

I've opened the CMO folder in program files, and don't see these files there (C:\Program Files (x86)\EPiServer\CMS\7.0.586.1\Install\Modules\CMO7.0.518.1\CMO, as referenced inside EpiServerFramework.config

<add name="CMO" virtualPath="~/CMO" physicalPath="C:\Program Files (x86)\EPiServer\CMS\7.0.586.1\Install\Modules\CMO7.0.518.1\CMO" type="EPiServer.Web.Hosting.VirtualPathNonUnifiedProvider, EPiServer.Framework" />

Is there any reason why these files are missing? 

Thanks
Danny

#80047
Jan 14, 2014 11:31
Vote:
 

Hello Danny,

Requests to *.axd usually processed by a handler, so there is no such files in CMO. Please check you handlers section in the web.config, it should contain references to the handlers:

<add name="ThumbnailHandler" verb="*" path="thumbhandler.axd" type="EPiServer.Cmo.Cms.ThumbnailHandler.CmoThumbnailHandler" resourceType="Unspecified" requireAccess="Script" />
<add name="CartLicense" verb="*" path="CartLicense.axd" type="ComponentArt.Silverlight.Server.LicensingHandler, ComponentArt.Silverlight.Server" />

    

#80053
Jan 14, 2014 14:26
Vote:
 

Hi Sergii,

I can confirm that I have all the entries in my web.confg (although reshraper greys them out .. )

 

 

  <location path="CMO">
    <system.web>
      <httpRuntime maxRequestLength="1000000" />
      <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
      <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID" enableSessionState="true" enableViewState="true" />
      <authorization>
        <allow roles="CmoUsers, CmoAdmins" />
        <deny users="*" />
      </authorization>
    </system.web>
    <system.webServer>
      <handlers>
        <clear />
        <add name="ThumbnailHandler" verb="*" path="thumbhandler.axd" type="EPiServer.Cmo.Cms.ThumbnailHandler.CmoThumbnailHandler" resourceType="Unspecified" requireAccess="Script" />
        <add name="CartLicense" verb="*" path="CartLicense.axd" type="ComponentArt.Silverlight.Server.LicensingHandler, ComponentArt.Silverlight.Server" />
        <add verb="GET,HEAD,POST" name="ChartImageHandler" preCondition="integratedMode" path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
        <add name="cachedimageservice" verb="GET" path="cachedimageservice.axd" type="ComponentArt.Web.Visualization.Charting.CachedImageService,ComponentArt.Web.Visualization.Charting" />
        <add name="svc-Integrated-4.0" path="*.svc" verb="*" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode,runtimeVersionv4.0" />
        <add name="webresources" path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" />
        <add name="PageHandlerFactory-Integrated" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Unspecified" requireAccess="Script" allowPathInfo="false" preCondition="integratedMode" responseBufferLimit="4194304" />
        <add name="SimpleHandlerFactory-Integrated" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Unspecified" requireAccess="Script" allowPathInfo="false" preCondition="integratedMode" responseBufferLimit="4194304" />
        <add name="WebServiceHandlerFactory-Integrated" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Services.Protocols.WebServiceHandlerFactory, System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Unspecified" requireAccess="Script" allowPathInfo="false" preCondition="integratedMode" responseBufferLimit="4194304" />
        <add name="wildcard" path="*" verb="*" type="EPiServer.Web.StaticFileHandler, EPiServer.Framework" />
      </handlers>
    </system.webServer>
  </location>
#80055
Jan 14, 2014 14:47
Vote:
 

Couple of further points:

1. I have the HTTP Rewrite module installed (<rewrite>...) for vairous redirects, as well has Lcasing all urls.. I've put in exclusions for the .axd files)

2. When I installed the CMO for my site, it wasn't listed for the "Select one of the listed EPiServer CMS 7 sites below." 
My test allow site however was... I had to "Show all sites" and pick my site...

Any reason why it would not be listed? It is a EPiServer 7 site..

#80063
Jan 14, 2014 15:56
Vote:
 

The site might not be displayed in the Deployment Center dialog if you have applied a patch to EPiServer 7 CMS site. Could you try to completely disable rewriting and lcasing just to check if it causing the issue? When you browse CMO UI there should be also requests to WebResources.axd, do they return 404 as well?

#80075
Jan 14, 2014 16:58
Vote:
 

I've removed all references to the rewrite module in my web.config..
I get no errors referencing webresources.axd and I can see the requests working in fiddler..

Still getting the other 404 errors..

I've tried installing CMO in a new Alloy MVC site.. I am facing an issue on that in that it now won't let me log on using my windows account? It's a fresh, new install, and the Windows provider is selected, and I am a local admin, so I see no reason why I should not be able to logon?? It worked when I setup a new site yesterday..

#80079
Jan 14, 2014 17:09
Vote:
 

Hi this is probably solved but I should just add that I had the same problem and it was caused by a custom routing in the application made ealier in our application. 

The solution for me was to add an ignorepate to the routing for axd files in general:

routes.IgnoreRoute("{​*allaxd}", new { allaxd = @".*\.axd(/.*​)?" });

That solved the 404 for our axd files in comibation with the above.

#145156
Feb 25, 2016 22:03
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.