PHP bajo IIS

amantona
08 de Noviembre del 2003
Hola ha todos.

Estoy intentando ejecutar PHP bajo IIS y he instalado el PHP en c:php.

He creado con el IIS un directorio virtual apuntando a donde tengo la aplicación y le he indicado al IIS que sobre este directorio virtual utilice php.exe (pulsando el botón Configuración y luego en la carpeta de Asinnaciones para la aplicación y eligiendo el archivo php.exe).

El problema es que cuando intento acceder a la aplicación PHP desde el navegador me da el siguiente error:

La aplicación CGI especificada puede comportarse de forma anormal si no recibe un conjunto completo de encabezados HTTP. Los encabezados retornados son:

El problema me da en Windows 2000 Professional y en Windows XP Professional, que son los dos sintemas operativos que tengo para probar.

¿Alguién sabe cómo puedo solucionar este problema?

Gracias

andrme
08 de Noviembre del 2003
Bien, podemos hacer lo siguiente. Desde el dir. que tienes el php, ejecuta php -i . Si te da un mensaje de error ya sabemos que está mal instalado el php y te dirá los pasos a seguir. Si por el contraio, aparece código HTML, sabremos que el php anda bien. Pruebalo de nuevo desde el browser, si te da el error, entoces puede ser que tengas problemas de permisos, es decir que el usuario anónimo de internet no tenga pemisos de accesos a php.exe, etc... Lo otro que puede suceder es que no exista el archivo, es de cir que por un problema de path no encuentre el archivo php. Puedes asegurarte de que es por esto el error, si marcahs en el iss la opcion "check file exist", de esta forma, si no lo encuentra te dará error 404.
En cuanto a tu php.ini y al que tengo en los server windows, la única diferencia es extension_dir, y recuerdo que eso lo cambie por algo, pero no recuerdo cual era el error que me daba. En mi php.in, tengo extension_dir="./"
Espero haberte ayudado, o al menos acercarnos más al problema

amantona
08 de Noviembre del 2003
Ya he encontrado el problema.

Lo que pasaba es que lo instalé a mano (porque el programa de instalación me daba error al ejecutarlo) y no sabía que hay que copiar las dlls de la carpeta de dlls de php más otra que viene en el raiz a la carpeta system del windows. Todos los demás pasos los había hecho correctamente pero lo de copiar las dlls no lo sabía, lo encontré buscando por internet.

Gracias de todas maneras.

andrme
08 de Noviembre del 2003
En php.ini fijate el valor de cgi.force_redirect, para que no te de error debería estar en 0
Suerte