He configurado IIS6 con FastCGI para usar php-cgi.exe.
Tengo algunos sitios web php de terceros, que estoy tratando de ejecutar en un entorno de prueba.
Uno de los sitios web simplemente me da una página de error FastCGI. Esto no sucede en todas las páginas, sólo parece suceder en algunas páginas, mientras que otras se muestran correctamente.
- Pregunta : ¿Hay alguna manera de habilitar el registro en algún lugar para que pueda obtener un poco más de información sobre este problema?
He buscado en
- Registro de eventos
- Registro del sitio web de IIS (c: \windows\system32\Logfiles )
- Registro PHP
Pero no hay resultados, excepto que el registro del sitio web de IIS menciona un retorno de una página 500.
- Pregunta : ¿Hay alguna otra forma de depurar/comprobar dónde pueden ir mal las cosas?
Este es el aspecto de la página:
Error de FastCGI
El FastCGI Handler no ha podido procesar la solicitud. Detalles del error:
El proceso FastCGI salió inesperadamente Número de error: -1073741571 (0xc00000fd). Descripción del error: Error desconocido Error HTTP 500 - Error del servidor. Servicios de Información de Internet (IIS)
Respuesta
Al parecer, el mensaje de error significa Stack Overflow, por lo que la depuración es el mensaje. No soy un desarrollador de PHP, así que esto fue un proceso bastante doloroso. Sin embargo, redujimos el problema a una solicitud Ajax, pero supongo que esto podría estar sucediendo con cualquier tipo de solicitud:
La propia petición hace que el servidor devuelva un 500. Después de probar la solicitud con Fiddler, encontramos que la entrada Cookie en la solicitud GET contiene un elemento PHPSESSID. Al dejar esto fuera, la petición funciona.
Así que la respuesta a este problema (en nuestro caso) es omitir el PHPSESSID de la solicitud. Ahora todo lo que queda es averiguar cómo hacerlo :)