繁体   English   中英

iis 7.0,模块订单更改

[英]iis 7.0, module order change

“条目无法重新排序,因为其中一个或多个已被锁定在父文件中”

在iis 7.0管理器中,当我尝试更改应用程序中的模块顺序时,它会给出此消息。

我怎样才能改变模块的顺序? 可能吗?

你不能在服务器级别而不是站点级别上执行此操作吗?

要更改站点的模块顺序,首先需要在服务器级别解锁受影响的模块。 因为您并不真正知道哪些模块受到影响,所以我通常会解锁它们。 最简单的方法是使用PowerShell脚本(如果您仍在IIS7上,则需要下载PowerShell IIS管理单元 )。

将以下内容保存到文本文件中:unlock-modules.ps1

 Import-Module WebAdministration

 Get-WebConfiguration `
 -pspath 'MACHINE/WEBROOT/APPHOST' `
 -filter "system.webServer/modules/add" -recurse | `
 where {$_.PSPath -eq 'MACHINE/WEBROOT/APPHOST' -and $_.Type -eq ''} `
 | foreach {         
     $filter = "system.webServer/modules/add[@name='" + $_.Name + "']"     
     Remove-WebConfigurationLock -pspath 'MACHINE/WEBROOT/APPHOST'  -filter $filter -verbose
 }

以提升的管理员身份打开PowerShell提示符并运行脚本。

该脚本循环遍历服务器级别的所有模块。 通常只锁定本机模块(带有'empty'类型'属性)。 全部解锁。

现在,您可以在站点级别更改模块的顺序。

重新排序时要小心,如果更改某些系统模块的顺序,IIS可能无法以预期的方式工作。

还要记住,如果您在服务器级别对模块进行更改,则站点将不再继承这些模块,您也必须将它们应用于站点级别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM