Long-running PHP process on nginx

I recent had to allow a PHP script to run for several minutes under Nginx (more specifically, as part of a Laravel app on a DigitalOcean server), after encountering the error “504 Gateway Timeout”. First, to tell Nginx to allow the script to run for a longer period of time, I set the FastCGI read timeout to ten minutes in 
/etc/nginx/sites-available/default :

Second, to increase the amount of time that this particular PHP routine could spend running, I increased the execution time limit programmatically before each processing block:

With this configuration, other PHP scripts are still capped at the default timeout value set in 
php.ini, and no individual block of processing is allowed to run away with the full ten-minute time limit.

Leave a Reply

Your email address will not be published. Required fields are marked *