我正在使用VSTS 2008 C#.Net 3.5 IIS 7.0开发ASP.Net网站.我想开发一个Http模块,它可以检查传入的请求是否具有特定的http标头(例如CustomerID),如果没有这样的标头,我会将用户请求重定向到其他页面.
我认为我应该通过在IIS 7.0集成模式下使用Http模块进行开发?如果我错了或者有更简单的解决方案,请纠正我.有参考样本或教程吗?我是IIS 7.0中Http模块开发的新手.
解决方法:
有许多文章描述了如何为ASP.NET创建标准HttpModule.可以在ASP.NET基础结构MSDN库中找到标题为“ Walkthrough: Creating and Registering a Custom HTTP Module”的此类文章.
确保在该演练中按照以下步骤在IIS 7集成模式下注册模块,否则将出现类似于以下的错误:
“ HTTP错误500.0-内部服务器错误
说明:此应用程序正在使用集成.NET模式的应用程序池中运行.这是在当前和将来版本的IIS上运行ASP.NET应用程序的首选模式.
在这种模式下,应用程序不应在/配置节中指定ASP.NET模块组件.相反,它应该使用/配置节来加载ASP.NET模块组件.”
您可以在IIS.NET站点上找到另一篇文章,该文章具有有关如何为IIS 7创建模块和处理程序的详细信息.本文的标题为“ Developing IIS 7.0 Modules and Handlers with the .NET Framework”