Windows Azure Cloud Service (41) 修改云服务IIS托管管道模式为4.0经典模式
2015-03-19 22:15
696 查看
《Windows Azure Platform 系列文章目录》
这是笔者在之前的项目中遇到的问题,做一下总结,给网友做参考。
在一般情况下,Visual Studio开发的Cloud Service在部署到Azure PaaS平台后,是IIS托管管道模式。有的时候,客户的Web应用程序需要4.0经典模式。就需要在启动Web Role时自定义IIS配置。我这里简单介绍一下。
1.在项目中添加引用:C:\Windows\System32\inetsrv\Microsoft.Web.Administration.dll。Microsoft.Web.Administration命名空间下,提供了一系列管理IIS的操作。更多细节,请参考:Microsoft.Web.Administration Namespace
2.修改ServiceDefinition.csdef,添加<Runtime executionContext="elevated"/>,使之有权限修改IIS配置
3.修改public override bool OnStart()方法(位于WebRole.cs),调用Microsoft.Web.Administration命名空间下面的操作设置IIS。参考以下示例代码(Cloud Service IIS站点的名称格式为:RoleEnvironment.CurrentRoleInstance.Id + "_Web"):
4.部署云服务,成功修改云服务IIS托管管道模式为4.0经典模式
本博-三石Blog(下文简称本博),在本博客文章结尾处右下脚未注明转载、来源、出处的作品(内容)均为本博原创,本站对于原创作品内容对其保留版权,请勿随意转载,如若真有需要的朋友可以发Mail联系我;转载本博原创作品(内容)也必须遵循“署名-非商业用途-保持一致”的创作共用协议,请务必以文字链接的形式标明或保留文章原始出处和博客作者(Lei Zhang)的信息,关于本博摄影作品请务必注意保留(www.cnblog.com/threestone)等相关水印版权信息,否则视为侵犯原创版权行为;本博谢绝商业网站转载。版权所有,禁止一切有违中华人民共和国著作权保护法及相关法律和本博(法律)声明的非法及恶意抄袭。
这是笔者在之前的项目中遇到的问题,做一下总结,给网友做参考。
在一般情况下,Visual Studio开发的Cloud Service在部署到Azure PaaS平台后,是IIS托管管道模式。有的时候,客户的Web应用程序需要4.0经典模式。就需要在启动Web Role时自定义IIS配置。我这里简单介绍一下。
1.在项目中添加引用:C:\Windows\System32\inetsrv\Microsoft.Web.Administration.dll。Microsoft.Web.Administration命名空间下,提供了一系列管理IIS的操作。更多细节,请参考:Microsoft.Web.Administration Namespace
2.修改ServiceDefinition.csdef,添加<Runtime executionContext="elevated"/>,使之有权限修改IIS配置
3.修改public override bool OnStart()方法(位于WebRole.cs),调用Microsoft.Web.Administration命名空间下面的操作设置IIS。参考以下示例代码(Cloud Service IIS站点的名称格式为:RoleEnvironment.CurrentRoleInstance.Id + "_Web"):
using (ServerManager serverManager = new ServerManager()) { var siteName = RoleEnvironment.CurrentRoleInstance.Id + "_Web"; Trace.Write(string.Format("Site Name: {0}.", siteName)); var siteApplication = serverManager.Sites[RoleEnvironment.CurrentRoleInstance.Id + "_Web"].Applications.First(); Trace.Write(string.Format("Application Pool: {0}.", siteApplication.ApplicationPoolName)); var appPoolName = siteApplication.ApplicationPoolName; var appPool = serverManager.ApplicationPools[appPoolName]; if (appPool != null) { appPool.ManagedPipelineMode = ManagedPipelineMode.Classic; serverManager.CommitChanges(); } }
4.部署云服务,成功修改云服务IIS托管管道模式为4.0经典模式
本博-三石Blog(下文简称本博),在本博客文章结尾处右下脚未注明转载、来源、出处的作品(内容)均为本博原创,本站对于原创作品内容对其保留版权,请勿随意转载,如若真有需要的朋友可以发Mail联系我;转载本博原创作品(内容)也必须遵循“署名-非商业用途-保持一致”的创作共用协议,请务必以文字链接的形式标明或保留文章原始出处和博客作者(Lei Zhang)的信息,关于本博摄影作品请务必注意保留(www.cnblog.com/threestone)等相关水印版权信息,否则视为侵犯原创版权行为;本博谢绝商业网站转载。版权所有,禁止一切有违中华人民共和国著作权保护法及相关法律和本博(法律)声明的非法及恶意抄袭。
相关文章推荐
- [New Portal]Windows Azure Web Site (5) 如何选择Windows Azure托管服务的类型?WebSite, Cloud Service还是Virtual Machine
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- IIS托管管道模式的集成和经典
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- Windows Azure Cloud Service (18) 基于Input Endpoint通过Worker Role发布WCF服务
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- IIS托管管道模式的集成和经典比较
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- Windows Azure Cloud Service (23) 使用Full IIS模式部署多站点和虚拟目录
- IIS 7 托管管道模式 经典模式 集成模式 区别 区分
- [转]IIS部署托管管道模式的集成和经典区别
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- Windows Azure Cloud Service (47) 修改Cloud Service时区
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- windows azure Vm、cloud service、web application 如何选择可用的服务
- IIS 7 托管管道模式 经典模式(Classic) 集成模式(Integrated) 分析与理解
- Windows Azure Cloud Service (22) Web Role的Full IIS特性