Estoy desarrollando en una máquina XP (SP3) con VS 2010 e IIS 5.¿Qué es debugattach.aspx y por qué el servidor no puede encontrarlo?
Tengo dos versiones del mismo sitio. Hemos lanzado nuestra primera versión de producción, así que bifurqué el código en un nuevo árbol de directorios y establecí nuevos directorios virtuales en IIS para apuntar a los nuevos árboles. Los proyectos están configurados para ejecutarse en IIS en lugar de en el servidor de VS. El sitio principal es un proyecto basado en MVC 2.
Mi problema es que, cuando presiono F5 en Visual Studio 2010 para comenzar a depurar la nueva versión, aparece "No se puede iniciar la depuración en el servidor web. El servidor web no pudo encontrar el recurso solicitado". Pasé la mayor parte de ayer tratando de descubrir qué recurso estaba buscando que no podía encontrar. Esto ocurre antes de que llegue al "Inicio de la aplicación". Finalmente pensé en buscar en los registros web, y encontré que cada vez que presiono la tecla F5, el registro web muestra una solicitud DEBUG para /debugattach.aspx, con un código de retorno de 404 (no encontrado). Si ejecuto la misma secuencia en la versión anterior, muestra lo mismo, pero primero con un código 401, y luego la solicitud se repite con un código 200.
Lo primero que pensé fue que VS debe escribir un archivo "debugattach.aspx" y luego invocarlo, y quizás no tenga permiso de escritura para el directorio, pero, por lo que yo sé, hace.
He buscado en debugattach.aspx, y las primeras páginas de artículos que se devuelven parecen referirse a bloqueos y tiempos de espera, principalmente en IIS 7 y VS 2005. Nada que parezca aplicarse a esta situación.
Al ver lo que es diferente entre la versión anterior que funciona y la nueva versión que no, las únicas cosas son la configuración de IIS de los directorios virtuales, y la web.config en el código en sí. Pero revisé los dos sitios uno al lado del otro y no puedo encontrar ninguna diferencia que explique este comportamiento.
¿Alguien tiene una pista que puedan compartir conmigo? ¿O puede alguien señalarme cualquier documentación sobre qué es/es exactamente debugattach.aspx, y qué hace una solicitud HTTP DEBUG, y/o cómo VS las usa?
Gracias de antemano.
No tenga en cuenta. Encontré la solución. No lo entiendo, pero lo tengo para trabajar. Volví una vez más y comparé las propiedades IIS de los dos sitios uno al lado del otro, y descubrí una diferencia. En el mapeo de la extensión de la aplicación, donde había agregado aspnet_isapi.dll como mapeo comodín para que las URL sin extensión se ejecutaran a través de la asignación de MVC, la casilla de verificación "Motor de secuencias de comandos" estaba marcada en el sitio que no funcionaba y no se verificaba en el sitio que fue. Lo eliminé y lo intenté de nuevo, y comenzó la depuración. –
aunque esta es una publicación anterior, todavía puede obtener crédito por publicar su propia respuesta =) – killthrush