IIS 7 - 禁用处理程序映射

ano*_*non 6 iis handler-mappings

我有一个全新安装的 IIS 7,在处理程序映射下,我看到一个禁用映射部分和一个启用部分。我想禁用一堆扩展(cshtml、aspq 等)。也就是说,我想将它们从“启用”部分“移动”到“禁用”部分而不删除它们。我该怎么做呢?

(编辑:糟糕。它是 IIS 7,而不是 7.5。)

Pet*_*orf 5

您不能在 UI 中禁用单个处理程序映射。Mark Henderson 提到的“编辑功能权限”适用于整个功能“处理程序映射”,因此它适用于所有映射,而不是单个映射。

实际上有三组处理程序,一组需要执行权限,例如“ISAPI-dll”或“CGI-exe”,第二组需要“脚本”权限,所有的 asp.net 处理程序都在该组中。第三组处理程序只需要“读取”权限,“静态文件”就是一个例子。因为它既不执行进程也不运行脚本,它只是从文件系统中读取一个文件。

您可以通过打开“编辑功能权限”并取消选中“脚本”来检查这一点,大多数映射现在都已禁用。取消选中“读取”,最后几个启用的也被禁用。

要从站点中删除处理程序,请打开 web.config 并添加如下内容:

<system.webServer>
    <handlers>
      <remove name="PageHandlerFactory-Integrated-4.0"/>
    </handlers>
</system.webServer>  
Run Code Online (Sandbox Code Playgroud)

这将删除集成的 ASP.NET 4 页面处理程序,这意味着 Web 表单 (aspx) 将不再工作。

如果您在 IIS 管理器中查看同一站点的“处理程序映射”,该映射仍会显示在启用部分中,即使它不再适用于该站点。