IIS 集成模式 导致 AjaxPro 无法正常运行

web.config 配置如下:

system.web/httphandlers

<httpHandlers>
      <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro" />
</httpHandlers>

system.webServer/handlers

<handlers>
      <add name="AjaxPro" verb="POST,GET" type="AjaxPro.AjaxHandlerFactory,AjaxPro" path="ajaxpro/*.ashx" />
</handlers>

 

如上配置在IIS7集成模式下没有问题,但部署到服务其它低版本服务器上会有问题。因为低版本没有集成模式,默认是经典模式。所以为了兼容老版本配置,删除system.webServer节点下的AjaxPro注册,统一使用经典模式,则此问题得以解决。

以下是微软官方对于system.webServer的解释:

system.webServer 节中的某些设置只适用于 IIS 7.0 集成模式,而不适用于经典模式。具体而言,如果应用程序正在经典模式下运行,则会忽略 Web.config 文件的 system.WebServer 节中指定的所有托管代码模块和处理程序。与 IIS 的早期版本相同,托管代码模块和处理程序必须在  system.web 节的  httpModules 和  httpHandlers 元素中定义。

本主题阐释需要修改 system.webServer 节的三个常见配置任务:

  • 添加默认文件,以便在请求 URL 未包含特定的文件时,提供该默认文件。

  • 注册托管代码模块。

  • 添加自定义响应标头

posted on   空明流光  阅读(486)  评论(0编辑  收藏  举报

编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2016-06-01 SQL Server 快捷键备忘

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示