unlimited tiempo script run maximum max_execution_time exceeded ejecucion php

tiempo - php.ini: ¿cuál?



tiempo de ejecucion php ini (4)

Aunque la respuesta de Pascal fue detallada e informativa, no mencionó información clave en el supuesto de que todo el mundo sabe cómo usar phpinfo()

Para aquellos que no:

Navegue a la carpeta raíz de su servidor web, como /var/www/

Dentro de esta carpeta crea un archivo de texto llamado info.php

Edite el archivo y escriba phpinfo()

Navegue al archivo como: http://www.example.com/info.php

Aquí verá la ruta php.ini bajo Loaded Configuration File :

Me mudé de mi viejo apache a nginx y php 5.3.10. Y cuando traté de modificar php.ini para satisfacer mis necesidades, descubrí que hay 3 de ellos:

$ locate php.ini /etc/php5/cgi/php.ini /etc/php5/cli/php.ini /etc/php5/fpm/php.ini

¿Cuál debería editar?


En términos generales, el archivo cli/php.ini se usa cuando se llama al binario PHP desde la línea de comandos.
Puede verificar que ejecuta php --ini desde la línea de comandos.

fpm/php.ini se usará cuando PHP se ejecute como FPM, que es el caso con una instalación de nginx.
Y puede verificar que llama a phpinfo() desde una página php servida por su servidor web.

cgi/php.ini , en su caso, probablemente no se use.


El uso de dos archivos php.ini distintos (uno para CLI y el otro para servir páginas de su servidor web) se realiza con bastante frecuencia, y tiene una ventaja principal: le permite tener diferentes valores de configuración en cada caso.

Normalmente, en el archivo php.ini que utiliza el servidor web, especificará un max_execution_time bastante corto: las páginas web deberían max_execution_time rápidamente, y si una página necesita más de unas pocas docenas de segundos (30 segundos, de manera predeterminada) , es probablemente debido a un error, y la generación de la página debe detenerse.
Por otro lado, puede tener secuencias de comandos bastante largas iniciadas desde su crontab (o a mano), lo que significa que el archivo php.ini que se utilizará es el que está en cli/ . Para esos scripts, especificará un max_execution_time mucho más max_execution_time en cli/php.ini que en fpm/php.ini .

max_execution_time es un ejemplo común; usted podría hacer lo mismo con muchas otras directivas de configuración, por supuesto.


Puede encontrar cuál es el archivo php.ini utilizado:

  • Por agregar phpinfo () en una página php y mostrar la página (como la imagen debajo)
  • Desde el intérprete de comandos, ingrese: php -i

A continuación, puede encontrar la información en el archivo de configuración cargada (por lo que aquí es /user/local/etc/php/php.ini)

A veces, has indicado (ninguno), en este caso solo tienes que poner tu php.ini personalizado que puedes encontrar aquí: http://git.php.net/?p=php-src.git;a=blob;f=php.ini-production;hb=HEAD

Espero que esta respuesta te ayude.


Realmente depende de la situación, para mí es en fpm ya que estoy usando PHP5-FPM. Una solución a su problema podría ser un php.ini universal y luego usar un enlace simbólico creado como:

ln -s /etc/php5/php.ini php.ini

Entonces, cualquier modificación que realice estará en un archivo .ini general. Aunque probablemente esta no sea realmente la mejor solución, es posible que desee estudiar la modificación de alguna configuración para que literalmente use un archivo en una ubicación. No múltiples ubicaciones pirateadas juntas.