2009-05-26 18 views
6

"las entradas no se pueden reordenar porque uno o varios de ellos se han encerrado en el archivo principal"IIS 7.0, cambio de orden módulo

en IIS 7.0 gerente cuando intento cambiar el orden de los módulos en mi solicitud se da este mensaje

¿cómo puedo cambiar el orden de los módulos? ¿Es posible?

Respuesta

3

¿No puedes hacerlo a nivel de servidor en lugar de a nivel del sitio?

+0

¿Qué quieres decir? los pls dan más detalles. – Yaya

+0

En lugar de establecer el orden de los módulos en el nivel del sitio en el administrador de IIS. Hazlo en el nivel del Servidor. – MartinHN

+4

¿Qué pasa si un módulo que queremos pedir no existe en el nivel del servidor, pero donde existe queremos que se ejecute antes que los módulos que existen en el nivel del servidor? – cytinus

1

Para cambiar el orden de los módulos de un sitio, primero debe desbloquear los módulos afectados en el nivel del servidor. Porque realmente no sabes qué módulos se ven afectados, generalmente los desbloqueo todos. La forma más sencilla de hacerlo es con un script de PowerShell (si todavía está en IIS7, debe descargar el PowerShell IIS snapin).

Guarde lo siguiente en un archivo de texto: desbloquear-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 
} 

Abra una línea de PowerShell como administrador con privilegios elevados y ejecute el script.

La secuencia de comandos recorre todos los módulos a nivel del servidor. Por lo general, solo los módulos nativos (con y la propiedad 'tipo' vacía) están bloqueados. Desbloquea todos.

Ahora puede realizar cambios en el orden del módulo en el nivel del sitio.

Tenga cuidado al reordenar, si cambia el orden de algunos de los módulos del sistema, es posible que IIS ya no funcione de la manera esperada.

Recuerde también que si realiza cambios en los módulos a nivel de servidor, el sitio ya no los heredará y deberá aplicarlos al nivel del sitio también.

+0

¿Es posible cambiar el orden de ejecución desde una línea de comando o powershell? – Maverick

+0

El script me ayudó, pero después de ejecutarlo obtengo "La definición del manifiesto del ensamblaje ubicado no coincide con la referencia del ensamblado. (Excepción de HRESULT: 0x80131040)" a menudo cuando navego en el complemento de configuración IIS, y cada vez que voy a la autenticación. –

+0

Pero un reinicio del sistema parece haber resuelto el problema. –

Cuestiones relacionadas