Nginx 504 Gateway time out error for Nginx - Increase PHP script execution time with Nginx


If you have a large setup or a server with limited resources, then you will often see the “504 Gateway Time-out” error.

You can follow the steps given below to increase the timeout value. PHP default is 30s.

Changes in php.ini

If you want to change max execution time limit for php scripts from 30 seconds (default) to 300 seconds.

# vi /etc/php.ini

Set…

max_execution_time = 300

In Apache, applications running PHP as a module above would have suffice. But in our case we need to make this change at 2 more places.

Changes in PHP-FPM

This is only needed if you have already un-commented request_terminate_timeout parameter before. It is commented by default, and takes value of max_execution_time found in php.ini

Edit…

# vi /etc/php5/fpm/pool.d/www.conf

Set…

request_terminate_timeout = 300
Changes in Nginx Config

To increase the time limit for example.com by

# vi /etc/nginx/sites-available/example.com
location ~ \.php$ {
      include /etc/nginx/fastcgi_params;
        fastcgi_pass  unix:/var/run/php5-fpm.sock;
      fastcgi_read_timeout 300;
}

If you want to increase time-limit for all-sites on your server, you can edit main nginx.conf file:

# vi /etc/nginx/nginx.conf
Add following in http{..} section

http {
      #...
        fastcgi_read_timeout 300;
      #...
}

Reload PHP-FPM & Nginx

Don’t forget to do this so that changes you have made will come into effect:

# service php5-fpm reload

# service nginx reload

Please leave you comments and valuable suggestions:

Comments

Popular posts from this blog

Observium: Configuring Microsoft Windows 2008 Server SNMP Agent

AWS: Introduction to AWS (Amazon Web Services)

System/Server Health Status using PowerShell