c# asp.net iis web-config virtual-directory

c# - Creación de aplicación/directorio virtual en una carpeta física en IIS/ASP.NET



web-config virtual-directory (2)

Suena como un problema de permisos en su sistema: para una cuenta .NET, el contexto de usuario en el que se ejecuta ASP.NET requiere acceso a su sitio.

En los sistemas hasta Windows Server 2000, este usuario era una cuenta local llamada simplemente ASPNET, luego se cambia a una de las cuentas NT_AUTHORITY. La forma más fácil de encontrar esto es proporcionarle al grupo IIS WPG (un grupo local) acceso a la cuenta.

MS proporciona instrucciones en http://support.microsoft.com/kb/316721/ , use lo anterior para determinar para qué cuenta de usuario debe verificar el acceso.

Lo que quiero lograr es simple:

Tenga en cuenta que "my-site" es un sitio web vacío con varias carpetas, "foo", "bar", "baz", etc.

Así que cuando hago clic derecho en "foo" y elijo "Nuevo> directorio virtual" y agrego mi aplicación que he escrito en VS.NET y luego trato de navegar a http: // localhost / foo / upload obtengo este error:

Parser Error Message: An error occurred loading a configuration file: Failed to start monitoring changes to ''C:/InetPub/my-site/foo/web.config'' because access is denied.

El caso es que no hay configuración web. en la carpeta "foo", y no debería ser así ya que es solo una carpeta normal en el sitio. Si agrego el directorio virtual en el nivel superior, en decir http: // localhost / foo_upload , todo funciona como debería ... entonces, ¿qué estoy haciendo mal aquí?


Solo estoy respondiendo por alguien que tiene el mismo problema y encontré este tema.

Agregué un permiso a Todos (en este caso, estaría en la carpeta C:/InetPub/my-site/foo/ ). Luego imprimí en la página qué usuario está ejecutando la aplicación en esta carpeta ...

Algo como:

labelCurrentUser.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

Luego quité el permiso a todos y agregué el usuario que obtuve.