Чтобы изменить порядок модулей для сайта, сначала необходимо разблокировать затронутые модули на уровне сервера. Поскольку вы не знаете, какие модули затронуты, я обычно разблокирую их все. Самый простой способ сделать это с помощью сценария 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 от имени администратора и запустите сценарий.
Скрипт проходит через все модули на уровне сервера. Обычно блокируются только собственные модули (с пустым свойством type). Разблокируйте их всех.
Теперь вы можете вносить изменения в порядок модуля на уровне сайта.
Будьте внимательны при повторном заказе, если вы измените порядок некоторых из системных модулей, IIS может больше не работать ожидаемым образом.
Также помните, что если вы вносите изменения в модули на уровне сервера, сайт больше не будет их наследовать, и вам придется применять их и на уровне сайта.