Alguien sabe por que sale este mensaje Unable to fork

tgp
04 de Agosto del 2009
Tengo un script que ejecuta un archivo en la linea de comandos... en mi servidor local (Apache, WindowsXP PHP5) funciona bien pero en el servidor host (Windows Server 2003 y PHP5) sale el siguiente erro y no se ejecuta:

Warning: system() [function.system]: Unable to fork

bueno instale el IIS en otra particion de windows pero no se como quitarese erro y lograr que se ejecute el archivo con la funcion system()

les agradeciria mucho su ayuda....

Saludos

ile
04 de Agosto del 2009
Fíjate si te sirve esto:
http://forums.devshed.com/archive/t-35606/unable-to-fork-execd-file-in-IIS-51

saludos!

eth0
04 de Agosto del 2009
Pues parece que significa que quizá no tienes suficientes permisos para ejecutar programas externos, o quizá no hay memoria suficiente para hacerlo.

tgp
04 de Agosto del 2009
Gracias a los dos por su respuesta pero ya lo sulucione, pues claro es un problema de permisos como dice en el vinculo que me enviaron... aunque no exactamente hay que hacerlo editanto el cmd.exe que es un riesgo ya que si se edita este archivo se le da permisos en general a todos los usuarios del servidor y mas si es un servidor publico puede representar un riesgo ya que no todos toman en cuenta la seguridad cuando programan... bueno pues esta es la solucion por si le sirve a alguien:

1. Ir al Servicio de Internet Information Server (Inicio>Panel de control > Herramientas administrativas > Servidor de Internet Information Server)

2. Expandir "ServerName"
3. Expandir Sitios Web
4. Expandir Sitio web predeterminado

5. Seleccionar el directorio en el cual tenermos alojado nuestro web site... si es windows 2003 server posiblemente tengan alojado mas de un sitio entonces seleccionar el directorio virtual en el cual estamos trabajando y obtenemos el error.

4. Dar click derecho (sobre el directorio) > Propiedades.

Se mostrara la etiqueta Directorio Virtula y comprobar donde dice permisos de ejecucion que se tenga "secuencia de comandos y ejecutables" si no lo tiene pues ponerlo :)

Seleccionar la etiqueta Seguridad de Directorios > modificar > nombre de usuario...
Por defaul este pone IUSR_nombredelservidor entonces cambiarlo a IUSR_nombredeldirectorio.... claro que funciona con cualqueir cosa que se le ponga pero por seguridad y control mejor ponerle el nombre del directorio o directorio virtual que estemos trabajando.

Este procedimiento solo da permisos de ejecucion al directorio virtual que se trabajo y no a todos los directorios virtuales que se tengan en el servidor...

ahora bien seria muy bueno trabajarlo conjuntamente con la opcion de php.ini
safe_mode =
y
safe_mode_exec_dir =

aunque yo estuve probando pero no me funciono... los tuve que dejar en off y si valor, si alguien sabe como funciona esta opcion del php.ini que nos haga el favor de explicarnos...

Saludos y espero que realmente le sirva a alguien...

d4v1d4
04 de Agosto del 2009
http://thitiv.blogspot.com/2006/08/php-webdev-resolving-unable-to-fork.html

Aquí encontré una solución