5 votos

IIS6: ¿Cómo solucionar un error 404 en una aplicación ASP.NET?

Tengo una aplicación ASP.NET en un Windows Server 2003/IIS6 que se niega a funcionar por alguna razón (es el Centro Xerox, si esa información ayuda). Sin embargo, ha estado funcionando perfectamente antes en este servidor.

Ahora, todo lo que obtengo si intento abrir la página de inicio de la aplicación ( http://some.intranet.server/XeroxCentreWareWeb/ ) es un error "404 - Archivo o directorio no encontrado".

  • La aplicación está configurada para funcionar en su propio pool de aplicaciones, que se ejecuta como Servicio de Red.
  • La cuenta del Servicio de Red tiene acceso de lectura al directorio configurado.
  • Si paro el grupo de aplicaciones, recibo el mensaje esperado de "Servicio no disponible", lo que significa que la aplicación y su grupo están conectados correctamente.
  • Traté de rastrear cualquier problema de permiso de archivo con procmon - nada que ver. Ni siquiera hay un acceso al directorio de la aplicación web cuando la página se carga.
  • Curiosamente, según procmon, el servidor web accede primero al archivo de error personalizado 401-2 (El inicio de sesión falló debido a la configuración del servidor), pero luego decide enviar el 404 al cliente.
  • EDITAR: La aplicación funciona con autenticación integrada en Windows. Los usuarios habituales también tienen acceso al directorio de la aplicación ( Me habría dado cuenta de los mensajes del sistema de archivos "ACCESO DENEGADO" en procmon, si hubiera habido alguno. )

Esto me hace pensar que hay algún tipo de problema extraño de permisos que ocurre incluso antes de que se acceda a los archivos de la aplicación. No tengo ni idea de dónde buscar.

He intentado ejecutar la aplicación como sistema local para una prueba, pero no ha servido de nada.

¿Qué más podría comprobar en este caso?

1 votos

+1 por usar ProcMon, por cierto.

2voto

Scott Forsyth - MVP Puntos 12030

En primer lugar, me encantan los pasos de solución de problemas que has dado. Una prueba más de "ruptura" es detener el sitio en sí, no sólo el grupo de aplicaciones, para asegurarse de que no es otro sitio que lo maneja, sin embargo, compartir el grupo de aplicaciones.

IIS6 tiene la sección "Web Service Extensions" dentro de IIS Manager. Asegúrese de que la versión del framework que está utilizando está permitida. Si has cambiado recientemente la versión del framework a una que no está marcada como permitida, eso arrojará un error 404.

Los registros de IIS también confirmarán el código de subestado para usted y también confirmará que el sitio correcto está conectado.

2voto

Tomalak Puntos 1119

La respuesta que he encontrado es tan simple como no obvia.

Todavía había un "Wildcard Application Map" definido para un servidor de aplicaciones que ya no existe (ColdFusion, en este caso). El desinstalador de ColdFusion obviamente "olvidó" eliminar esa configuración de la MetaBase.

Aquí se definen los mapas de aplicación comodín:

  • en el Administrador de IIS, abra el cuadro de diálogo Propiedades de la aplicación
  • en la pestaña "Directorios virtuales", busque en la sección "Configuración de la aplicación"
  • haga clic en "Configuración "
  • se abre el cuadro de diálogo "Configuración de la aplicación".
  • ahí está, en la pestaña "Mapas"

0 votos

Es bueno saber que has encontrado la respuesta. Bien.

0voto

Warren Blanchet Puntos 881

A riesgo de señalar lo obvio... ¿Está default.aspx todavía en la lista de documentos por defecto para ese sitio / directorio virtual?

0 votos

Sí. Un problema de este tipo llevaría a un mensaje de "listado de directorio no permitido" de todos modos, no a un 404.

0voto

roxan Puntos 4926

Baja un nivel e instala Wireshark. Olfatea toda la transacción en el servidor.

0voto

Russ Wheeler Puntos 173

Como otros han dicho, utilice Wireshark u otro programa de captura de paquetes para analizar el tráfico entre el cliente y el servidor. Esto le permitirá ver la solicitud exacta que el cliente está enviando al servidor y la respuesta del servidor. Me parece que cuando estoy golpeando mi cabeza contra la pared con un problema de red que la ejecución de una captura de paquetes a menudo ilumina algo que me perdí o pasó por alto.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: