puede opciones leer las error configuración codigo asp archivo activar activado 0x80070021 iis iis-7 iis-8.5 iis-10

iis - opciones - Error de configuración: esta sección de configuración no se puede utilizar en esta ruta



http error 500.19 internal server error no se puede leer el archivo de configuración (30)

He encontrado un error al implementar un sitio en un servidor. Cuando intento cargar la página de inicio o acceder a la autenticación en el nuevo sitio en IIS, aparece el error:

Error de configuración: esta sección de configuración no se puede utilizar en esta ruta. Esto sucede cuando la sección está bloqueada en un nivel principal. El bloqueo se realiza de forma predeterminada (overrideModeDefault = "Deny"), o se establece explícitamente mediante una etiqueta de ubicación con overrideMode = "Deny" o la heredada allowOverride = "false".

Más detalles se pueden encontrar aquí, en el Escenario 7 coincide con mi código de error hexadecimal.

La solución dada en el sitio vinculado anterior es establecer Permitir para overrideModeDefault en la sección mencionada en mi error, en el archivo applicationHost.config . En mi caso, bajo Seguridad en system.webServer . Pero si miro applicationHost.config en mi computadora local, donde el sitio ya está implementado correctamente, esa sección está configurada en Denegar .

Si esta solución es correcta, ¿cómo es que mi instancia local funciona bien con el mismo web.config ? Según mi applicationHost.config , esa sección debería estar bloqueada, pero no lo está. Prefiero no cambiar el archivo applicationHost.config , porque hay muchos otros sitios que se ejecutan en ese servidor. ¿Hay otra solución?


¿Puedes probar esto?

Vaya a la ruta de la aplicación donde está obteniendo un error de denegación, haga clic derecho

Propiedades-> pestaña Seguridad

En eso, cambie los permisos y marque la casilla de verificación leer y escribir. Entonces funcionará sin ningún error con suerte.


El error dice que la sección de configuración está bloqueada en el nivel primario. Por lo tanto, no será directamente un archivo de configuración que resolverá el problema, debemos pasar por la jerarquía de los archivos de configuración para ver la herencia. Revise el enlace a continuación para ver la jerarquía de archivos y la herencia en IIS.

https://msdn.microsoft.com/en-us/library/ms178685.aspx

Por lo tanto, debe verificar los ajustes de configuración de la aplicación en el siguiente orden

  1. ApplicationHost.config en C: windows / system32 / inetsrv / config. Cambie el atributo overrideModeDefault para que sea Permitido.
  2. ApplicationName.config o web.config en el directorio de aplicaciones
  3. Web.config en el directorio raíz.
  4. Web.config en el sitio web específico (mi problema se encontró en este lugar).
  5. Web.config de la web raíz (configuración del servidor)
  6. machine.config de la máquina (Root''s web.config y machine.config se pueden encontrar en - systemroot / MicrosoftNET / Framework / versionNumber / CONFIG / Machine.config)

Ir cuidadosamente a través de todas estas configuraciones en el orden de 1 a 6 y debe encontrarlo.


En Windows Server 2012 con IIS 8 , he resuelto esto al habilitar la característica ASP.NET 4.5 :

y luego siguiendo la respuesta de ken .


En mi caso, era otra cosa.

Cuando cargué la solución en una nueva versión de Visual Studio, aparentemente, VS creó un nuevo archivo applicationhost.config específico del proyecto:

MySolutionDir / .vs / config / applicationhost.config

Comenzó a usar la configuración de la nueva configuración, en lugar de mi configuración global ya personalizada de IIS Express. (/ Users /% USER% / Documents / IISExpress / config / applicationhost.config)

En mi caso, esta fue la configuración que debía establecerse. Por supuesto que podría ser algo más para ti:

<section name="ipSecurity" overrideModeDefault="Allow" />


En mi caso, fue que en el servidor no estaba habilitada la "Activación HTTP" en las Características de .NET Framework. Así que para Windows Server 2012 la solución que funcionó para mí fue:

Administrador del servidor -> Agregar roles y características -> Características -> asegúrese de que bajo .NET Framework de la versión que desea usar esté marcado "Activación HTTP"


En mi caso, recibí este error al intentar actualizar la configuración de autenticación en IIS además de la navegación. Pude eliminar este error eliminando la configuración de autenticación de web.config. Eliminar una sección de configuración problemática puede ser menos invasivo y preferible en algunos casos que cambiar demasiado las funciones y funciones del servidor:

Sección eliminada:

<security> <authentication> <windowsAuthentication enabled="true" /> </authentication> </security>


En mi caso, recibí este error porque estaba operando en el archivo de configuración incorrecto.

Yo estaba haciendo esto

Configuration config = serverManager.GetWebConfiguration(websiteName); ConfigurationSection serverRuntimeSection = config.GetSection("system.webServer/serverRuntime"); serverRuntimeSection["alternateHostName"] = hostname;

en lugar del código correcto:

Configuration config = serverManager.GetApplicationHostConfiguration(); ConfigurationSection serverRuntimeSection = configApp.GetSection("system.webServer/serverRuntime", websiteName); serverRuntimeSection["alternateHostName"] = hostname;

en otras palabras, estaba tratando de operar en web.config del sitio web en lugar del archivo global C: / Windows / System32 / inetsrv / config / applicationHost.config, que tiene una sección (o puede tener una sección) para el sitio web. La configuración que estaba intentando cambiar solo existe en el archivo applicationHost.config.


En nuestro caso en IIS 8, encontramos que el error se produjo al intentar ver la autenticación "para un sitio, cuando:

  1. La delegación de funciones del servidor marcada como "Autenticación - Windows" = "Solo lectura"
  2. El sitio tenía un web.config que hacía referencia explícita a la autenticación de Windows; p.ej,

Al marcar el sitio Delegación de función "Autenticación - Windows" = "Lectura / Escritura", el error desapareció. Parece que, con la función marcada como "Sólo lectura", web.config no tiene permitido hacer referencia alguna, ni siquiera para deshabilitarla, ya que esto aparentemente constituye una escritura.


Esto hizo el truco para mí, para el servidor IIS 8 Windows 2012 R2

Ir a "Activar características"

Luego vaya a todos los ajustes predeterminados, Siguiente, Siguiente, Siguiente, etc.

Luego, seleccione como se muestra a continuación,

Luego reinicie IIS (opcional) pero hágalo del lado más seguro.

Esta es una solución adicional, ya que es un problema genérico que todos tienen problemas diferentes y, por lo tanto, una solución diferente. ¡Aclamaciones!


Esto me funcionó. También en IIS 8 puede resolver este problema cambiando el servidor a IIS Express. Ir a depuración-> Propiedades En la Web, seleccione el servidor como IIS Express del menú desplegable y luego reconstruya la solución


La forma Powershell de habilitar las características (Windows Server 2012 +) - recortar según sea necesario:

Install-WindowsFeature NET-Framework-Core Install-WindowsFeature Web-Server -IncludeAllSubFeature Install-WindowsFeature NET-Framework-Features -IncludeAllSubFeature Install-WindowsFeature NET-Framework-45-ASPNET -IncludeAllSubFeature Install-WindowsFeature Application-Server -IncludeAllSubFeature Install-WindowsFeature MSMQ -IncludeAllSubFeature Install-WindowsFeature WAS -IncludeAllSubFeature


La mejor opción es cambiar la Application Settings de la Application Settings desde la Custom Site Delegation
Abra IIS y desde la raíz seleccione Feature Delegation y luego seleccione Application Settings y, desde la barra lateral derecha, seleccione Read/Write


Lo siguiente me funcionó:

Ir a las propiedades del proyecto. Pestaña web Establecer en IIS local y establecer página específica.

Tengo Windows 7 y Visual Studio 2013.


Necesitaba cambiar la configuración de SSL en una subcarpeta cuando recibí este bonito mensaje. En mi caso, la acción me ayudó.

Se abrió C: / Windows / System32 / inetsrv / config / applicationHost.config

Y cambió el valor de overrideModeDefault = "Denegar" a "Permitir"

<sectionGroup name="system.webServer"> ... <sectionGroup name="security"> <section name="access" overrideModeDefault="Allow" /> </sectionGroup>


Necesitaba ejecutar estos dos comandos desde y un símbolo del sistema elevado:

%windir%/system32/inetsrv/appcmd unlock config /section:anonymousAuthentication %windir%/system32/inetsrv/appcmd unlock config -section:windowsAuthentication


Necesitas desbloquear manejadores. Esto se puede hacer usando el siguiente comando cmd:

%windir%/system32/inetsrv/appcmd.exe unlock config -section:system.webServer/handlers

Tal vez otra información para las personas que están recibiendo este error en IIS 8, en mi caso, fue en la plataforma Microsoft Server 2012. Pasé un par de horas luchando con otros errores que surgieron después de ejecutar appcmd. Al final pude solucionarlo eliminando el rol del servidor web e instalándolo de nuevo.


Noruego google ref:

Denne konfigurasjonsdelen kan ikke brukes i denne banen. Dette skjer når delen er låst på et overordnet nivå. Låsing skjer som standard (overrideModeDefault = "Deny") eller angis eksplisitt av en stedskode med overrideMode = "Deny" eller den eldre allowOverride = "false".

Activar todas las opciones de desarrollo de aplicaciones solucionó esto para mí. Probablemente no lo necesito todo, pero ahora funciona.


Para Windows Server 2012 e IIS 8 , el procedimiento es similar.

El Web Server (IIS) y el Application Server deben estar instalados, y también debe tener el Web Server (IIS) Support opcional del Web Server (IIS) Support en el Application Server .



Para realizar un cambio en el nivel de aplicación (Web.Config):

Por favor, elimine el nivel de confianza de web.config:

En realidad, estaba recibiendo este error cuando intentaba alojar mi sitio web en el servidor host donde no tengo control sobre su servidor. Eliminar la línea anterior de mi aplicación web.config solucionó mi problema.


Para solucionar este problema, abra la aplicación IIS Expresshost.config. Este archivo se almacena en C: / Usuarios [su nombre de usuario] / Documentos / IISExpress / config / applicationhost.config

Actualización para VS2015 +: la ubicación del archivo de configuración es $ (solutionDir) .vs / config / applicationhost.config

Busca las siguientes líneas

<section name="windowsAuthentication" overrideModeDefault="Deny" /> <section name="anonymousAuthentication" overrideModeDefault="Deny" /> <add name="WindowsAuthenticationModule" lockItem="true" /> <add name="AnonymousAuthenticationModule" lockItem="true" />

Cambia esas líneas a

<section name="windowsAuthentication" overrideModeDefault="Allow" /> <section name="anonymousAuthentication" overrideModeDefault="Allow" /> <add name="WindowsAuthenticationModule" lockItem="false" /> <add name="AnonymousAuthenticationModule" lockItem="false" />

Guárdalo y actualiza la página de Asp.net.


Parece que con IIS Express y VS 2015, hay una copia del archivo applicationHost.config en $ (solutionDir) .vs / config / applicationhost.config, por lo que deberá realizar cambios allí. Vea este enlace: http://digitaldrummerj.me/iis-express-windows-authentication/

Asegúrese de que estas líneas se cambian por debajo de:

<section name="windowsAuthentication" overrideModeDefault="Allow" /> <section name="anonymousAuthentication" overrideModeDefault="Allow" /> <add name="WindowsAuthenticationModule" lockItem="false" /> <add name="AnonymousAuthenticationModule" lockItem="false" />


Recibí este mismo problema después de instalar IIS 7 en Vista Home Premium. Para corregir el error, cambié los siguientes valores ubicados en el archivo applicationHost.config ubicado en Windows / system32 / inetsrv.

Cambie todos los siguientes valores ubicados en la sección ->

<div mce_keep="true"><section name="handlers" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div> <div mce_keep="true"><section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div>


Según mi respuesta a este problema similar ;

Intente desbloquear la configuración de IIS relevante a nivel de servidor, de la siguiente manera:

  1. Abra el Administrador de IIS
  2. Seleccione el servidor en el panel de Conexiones
  3. Abra el editor de configuración en el panel principal
  4. En el menú desplegable Secciones, seleccione la sección para desbloquear, por ejemplo, system.webServer> defaultPath
  5. Haga clic en Desbloquear atributo en el panel derecho
  6. Repite para cualquier otra configuración que necesites desbloquear.
  7. Reiniciar IIS (opcional): seleccione el servidor en el panel Conexiones, haga clic en Reiniciar en el panel Acciones

También puede utilizar el Administrador de IIS para editar esas configuraciones.

Cuidado de este artículo de Learn IIS :

Usando la función Delegación desde la raíz de IIS:

Luego, puede controlar cada uno de los permisos de lectura / escritura a nivel de máquina, que de otra manera le darán los errores overrideMode = "Deny" .


Tuve el mismo problema.

  • Se resolvió habilitando la función Servidor de aplicaciones. Reiniciado iis después de eso.

Tuve un problema en el que estaba ingresando los valores de anulación = "Permitir" (que ya se mencionaron aquí) ... pero en un sistema de x64 bits ... mi notepad 32 ++ era fantasma salvándolos. Cambiar a Bloc de notas (que es una aplicación de 64 bits en un O / S de 64 bits) me permitió guardar la configuración.

Ver :

http://dpotter.net/technical/2009/11/editing-applicationhostconfig-on-64-bit-windows/

El texto relevante:

Uno de los problemas que estoy agotando requiere que vea y posiblemente edite applicationHost.config. Este archivo se encuentra en% SystemRoot% / System32 / inetsrv / config. Parece bastante simple. Pude encontrarlo fácilmente desde la línea de comandos, pero cuando fui a cargarlo en mi editor favorito (Notepad ++) obtuve un error de archivo no encontrado. Resulta que la carpeta System32 está redirigida para aplicaciones de 32 bits a SysWOW64. Parece que no hay manera de ver la carpeta System32 usando una aplicación de 32 bits. Imagínate. Afortunadamente, las versiones de 64 bits de Windows se envían con una versión de 64 bits de Notepad. Por mucho que me disguste, al menos funciona.


Vaya a "C: / Windows / System32 / inetsrv / config" (necesitará derechos de administrador aquí) Abra la aplicaciónHost.config

Nota : En IISExpress y Visual Studio 2015 el applicationHost.config se almacena en $(solutionDir).vs/config/applicationhost.config

Encuentre la sección que apareció en la parte "fuente de configuración" de la página de mensajes de error. Para mí, esto típicamente ha sido "módulos" o "manejadores"

Cambie el atributo overrideModeDefault para que sea Allow

Así que toda la línea ahora se ve como:

<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />

Después de guardar el archivo, la página se cargó bien en mi navegador.

Advertencia: editando applicationHost.config en Windows de 64 bits


Yo tuve el mismo problema. No recuerdo dónde lo encontré en la web, pero aquí está lo que hice:

  • Haga clic en el botón "Inicio"
  • en el cuadro de búsqueda, ingrese "Activar o desactivar las características de Windows"
  • En la ventana de características, haga clic en "Servicios de información de Internet".
  • Haga clic en: "World Wide Web Services"
  • Haga clic en: "Características de desarrollo de aplicaciones"
  • Compruebe (habilite) las características. Lo comprobé todo excepto CGI.

por cierto, estoy usando Windows 7.


Para Win 10 (Probablemente también funcionará en otras versiones de Windows).

1. Abra " Activar o desactivar las características de Windows " mediante: WinKey + R => "optionalfeatures" => OK

  1. Habilite esas características en " Características de desarrollo de aplicaciones"