【IIS】IIS中同时满足集成模式和经典模式
手里有一个项目--系统设置(主要功能是对系统一些字典表的设置、权限管理等功能)。在VS上运行没有任何问题。可是发布到IIS上之后,报黄页。
发布后程序运行环境为:
windows 7 32位
IIS为7
.Net FrameWork为4.0
经过搜索发现,故障原因为:
IIS应用程序池中,应用程序IISWEB的托管管道模式为集成模式导致。切换为经典模式后,程序运行正常。
为什么集成模式不能用呢?
搜索资料发现:
经典模式,是为了和IIS6等以前的版本兼容所设置的。
集成模式,是新的模式。
也就是IIS6和IIS7直接的不同导致了,报黄页。两个的不同,主要也就是在处理管道中进行处理的方式不同。
具体的细节可以看这篇文章:
为了同时使用经典模式和集成模式,我们可以修改一下配置文件:
简单来说,就是,将System.Web下 HttpModules中的内容,复制一份,放到System.WebServer下modules中就可以了。
这样,程序在集成模式和经典模式下,都可以很好的运行了。在打包程序的时候,也不用考虑IIS版本不同报黄页的情况了。
为什么这么做呢?
请看如下链接。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· DeepSeek智能编程
· 精选4款基于.NET开源、功能强大的通讯调试工具
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?