Azure和HttpHandlers

时间:2011-12-18 17:44:51

标签: asp.net-mvc-3 azure httphandler

我有一个用于asp.net mvc应用程序的HttpHandler。我已经测试了asp.net和asp.net mvc 3应用程序的处理程序,一切都按预期工作。

当我在基于Azure的asp.net mvc 3应用程序中使用HttpHandler时,未调用'ProcessRequest'方法 - 我可以看到正在创建HttpHandler。

我有以下web.config,这适用于标准的asp.net mvc 3应用程序:

  <system.web>
    <httpHandlers>
      <add type="TestWebRole.Infrastructure.HttpHandlers.EPubHandler"
           path="*.epub"
           verb="*" />
    </httpHandlers>
  </system.web>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
    <handlers>
      <add name="EPubHandler"
           type="TestWebRole.Infrastructure.HttpHandlers.EPubHandler"
           path="*.epub"
           verb="*"
           resourceType="Unspecified"
           allowPathInfo="false"
           modules="IsapiModule"
           scriptProcessor="%path%\aspnet_isapi.dll"/>
    </handlers>
  </system.webServer>

我还在global.asax.cs文件中有以下语句来指定忽略asp.net,扩展类型的mvc路由:

 routes.IgnoreRoute("{resource}.epub/{*pathInfo}");

在Azure中运行 - 本地或部署到云中时,我需要配置什么才能使其正常工作?

1 个答案:

答案 0 :(得分:2)

试试看,为什么不删除system.web下的httpHandlers部分,只留下system.webServer中的部分。并且还从system.webServer(scriptProcessor,modules,allowPathInfo)下删除所有不必要的属性。

此外,您还可以检查任何未知的异常,事件日志条目,任何显示某种错误的内容。

相关问题