禁用经典ASP而不在IIS上禁用ASP.NET

时间:2011-03-24 16:46:15

标签: asp.net iis asp-classic

BTW这不是我想要的东西,但是我必须遵循的要求。我的要求是创建一个用户界面,允许用户在允许运行ASP.NET 1-4应用程序的同时禁用Classic ASP。任何人都可以想到用户会想要这样做的用例吗?

2 个答案:

答案 0 :(得分:2)

当然,如果您是通过模拟某些相关IIS选项的应用程序提供对Web服务器的部分访问的Web主机,那么客户不仅不希望增加不需要的脚本/可执行系统运行的风险,而且您也不会,所以你要关闭它,除非他们进去并明确地打开它,因为他们需要它。

事实上,这个用例的软件已经存在。

答案 1 :(得分:1)

Jon关于通过删除不需要的功能来减少网站攻击面的评论是非常有效的。理想情况下,你应该只运行你需要的东西,而不是更多。

有许多现成的商业解决方案可以解决这个问题,例如Plesk,但它们可能会为您的需求提供太多功能。

您可以编写自己的功能:

如果这是IIS6,那么你应该看一下通过System.DirectoryServices命名空间浮出的ADSI API:

Using System.DirectoryServices to Configure IIS

要启用/禁用脚本地图,您需要操作网站的ScriptMaps配置数据库属性:

ScriptMaps Metabase Property (IIS 6.0)

如果这是IIS7,请查看Microsoft.Web.Administration托管API。在IIS7中,您希望操作站点的处理程序映射:

Handlers <handlers> - IIS.NET

在所有情况下,用户必须是计算机管理员组的成员。