How to Fix 504 Gateway Timeout Error: 10 Reliable Solutions

How to Fix 504 Gateway Timeout Error: 10 Reliable Solutions

Like the 500 internal server and 502 bad gateway errors, 504 “Gateway Timeout” is one of the most common server errors both users and website owners encounter.

Every second of downtime can harm your WordPress site’s search engine performance. Therefore, as a website owner, you need to fix this issue as soon as possible.

This article will go over the possible causes of the 504 gateway timeout error.

The 504 “Gateway Timeout” Error indicates that the browser sent an HTTP request to the server and it did not receive a response in time from another server to complete the request. In most cases, you can resolve it by refreshing the web page.

In other words, the 504 Gateway Timeout Error means that there’s an issue with your network connection or server communication speed as it did not load the web page.

Debugging the 504 gateway timeout error can be challenging due to the high number of potential causes. We’ve included troubleshooting tips to help you get the site up and running in no time.

504 Bad Gateway Timeout Error Variations and Causes

Error code504 Gateway Timeout Error
Error typeServer-side
Error variationsGateway Timeout Error
Gateway Timeout (504)
504 Gateway Time-out. The server didn’t respond in time
This page isn’t working. Domain took too long to respond
HTTP Error 504 – Gateway Timeout
504 Status Code
Error causesFirewall
DNS issues
Network connectivity problems
Overloaded server
PHP limits

When you encounter the 504 Bad Gateway error, it will usually look something like this:

504 error message.

This HTTP error can appear in different forms and various error messages across browsers, servers, and operating systems. Here are the most common ones:

  • 504 Gateway Timeout NGINX
  • Gateway Timeout Error
  • Gateway Timeout (504)
  • HTTP Error 504
  • Error 504
  • 504 Error
  • 504 Gateway Time-out. The server didn’t respond in time
  • This page isn’t working. Domain took too long to respond
  • HTTP Error 504 – Gateway Timeout
  • 504 Status Code
  • 504 Error Code

Determining the causes is the first step of fixing the 504 Gateway Timeout error. Here are several problems that may cause 504 gateway timeout:

  • Firewall issues. The DDoS protection and mitigation systems of some firewalls may block requests from a specific internet service provider or a content delivery network like Cloudflare. Faulty firewall configuration may also be the issue.
  • Unresolvable domain. This occurs when a domain fails to resolve to a correct IP address. This issue could happen when a website has been recently moved to a different IP address or hosting nameserver.
  • Connectivity issues. If the 504 Gateway Timeout error appears on multiple browsers, devices, or websites, your network equipment might be experiencing temporary connection problems.
  • Web server overload. A web server running low on resources can get overloaded and thus respond to browser requests slowly, causing the other server to time them out.
  • Limited PHP workers. These components handle requests whenever a visitor takes action on a WordPress website. Without sufficient PHP workers, your website might fail to process multiple requests.
  • Domain Name System (DNS) issues. These include an incorrect DNS configuration and an outdated or corrupted DNS cache.

How to Fix 504 Gateway Timeout Error

In most cases, 504 errors have server-side causes. However, they may also pop up due to issues or an incorrect configuration on the client side.

We’ll go through the basic troubleshooting steps with both options in mind. Most of the solutions apply to any website, but some are WordPress-specific.

1. Refresh the Page

This tip may sound simple, but it’s one of the most common fixes to resolve the 504 gateway timeout error. The server might be receiving more requests than usual, so refreshing the page is worth a try.

The easiest way to do it is to click the Refresh button next to your browser’s address bar or press F5. Alternatively, press Ctrl + F5 to clear the browser cache and force refresh the page.

While waiting for the page to refresh, consider checking if the website is down. Doing so will confirm whether the problem is related to your local network.

2. Check the Order Usage

Each hosting plan allocates a certain amount of resources for optimal website performance. Hostinger users can check their allocated resources by accessing the Resource Usage menu from hPanel.

The Resources Usage button on hPanel

If your hosted WordPress site has reached its hosting plan limits, visitors will see a server error message. If this is the case, contact your hosting provider to upgrade to a hosting plan with more resources to better accommodate your site’s needs.

Another possible solution to this problem is to increase the maximum execution time limit of PHP. Server timeouts can happen when PHP scripts take longer to complete than the defined duration.

Extending the maximum execution time limit will help prevent the scripts from being marked as an error mid-process. Do so by manually editing the .htaccess file, installing the Google Pagespeed Insights plugin, or changing the PHP configuration via your hosting account’s control panel.

Here are the steps to increase the WordPress max-execution-time value via hPanel:

  1. Navigate to PHP Configuration under the Advanced section of the hPanel.
  2. Click on the PHP Options tab, and scroll down until you locate the max-execution-time field.
WordPress's max execution time option on hPanel
  1. The default value is 30 seconds. Increase it to 60 and click Save. If that doesn’t resolve the issue, increase the value further to 120-180 seconds.

Don’t set the max-execution-time value to 0 as it would allow PHP scripts to run for an infinite period and consume your server resources.

3. Try a Different Browser

If refreshing the page and increasing the maximum execution time limit of PHP scripts didn’t resolve the 504 gateway timeout error, the issue might be browser-related.

Try loading the WordPress site on another browser and using incognito mode to verify that it’s not a server-side error. Clearing the browser cache before reloading the page will also increase its load time and reduce the probability of server timeouts.

4. Flush DNS

DNS issues can originate on both the server and client sides. Server-side DNS issues generally occur on websites with unresolved IP addresses, while client-side ones are caused by an outdated or corrupted DNS cache, which could result in HTTP error 504.

If the WordPress site was recently moved to a different domain or server, the change might not have finished propagating globally. DNS propagation takes between 24-48 hours to complete, so use a DNS propagation checker to verify whether the process is complete.

To fix client-side DNS issues, try flushing your DNS cache. Like browsers, your operating system maintains a local cache. Flushing DNS will eliminate corrupted and outdated cache files that may be causing errors.

The way of doing it differs depending on your operating system. For instance, the following are the steps to flush the DNS cache on Microsoft Windows:

  1. Press Windows+R keys together, then type cmd to open the command prompt.
  2. Type ipconfig /flushdns and press Enter to clear the DNS cache files and reset the DNS resolver cache.
  3. A confirmation message will appear if the process is successful.
Flushing DNS cache on Windows.

Important! Flushing DNS cache is particularly beneficial to Google Chrome users, as the browser stores a separate cache from the operating system.

Temporary switching the DNS server to a public one is an excellent way to rule out the possibility of a DNS-related problem. Some of the most popular public DNS servers include Cloudflare 1.1.1.1, Google Public DNS, and Comodo Secure DNS.

5. Test with Different Devices

Try loading the website on a different computer, network connection, or mobile phone. You may also try rebooting the network devices to check if it’s a hardware issue or an internet connection problem.

If the HTTP 504 error persists on multiple devices, it’s likely a server-side problem.

6. Check the Error Log

Another possible cause of the 504 gateway timeout error is code corrupted by recent website changes or updates. In this case, checking the error log will help quickly pinpoint the issue.

Hostinger users can activate the PHP error logging feature on hPanel. Here’s how to do it:

  1. Navigate to PHP Configuration under the Advanced section of hPanel.
  2. Access the PHP Options tab and tick the log_errors box.
Tick the logErrors box in the PHP configuration
  1. Scroll down to the bottom and hit Save.

If your hosting provider doesn’t offer PHP error logging by default and you’re using WordPress, you can enable debug mode by adding the following lines to the wp-config.php file:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Setting WP_DEBUG_LOG to true will document any errors in the wp-content/debug.log file. Meanwhile, WP_DEBUG_DISPLAY dictates whether or not debug messages will appear on HTML pages.

The debug-log file in hPanel's file manager

7. Check Plugins

In rare cases, a third-party WordPress plugin may be causing the 504 gateway timeout error. Certain plugins, particularly those related to caching, send requests to the server, thus increasing the workload of PHP workers, which might trigger the issue.

Outdated or incompatible plugins can also cause problems. Temporarily disabling all of them will help you check if there’s a faulty plugin.

Navigate to the wp-content directory and rename the plugins folder, which will disable all of your WordPress plugins. You can do this via your hosting account’s File Manager or an FTP client like FileZilla.

The disabled-plugins folder in hPanel's file manager

If your site works fine when all the plugins are disabled, the next step is to locate which of them is causing the error 504. Restore the original name of the plugins directory and disable the plugins one by one to pinpoint the source of the issue.

8. Check CDNs

If you’re utilizing a Content Delivery Network (CDN) to serve content faster, it’s worth checking whether it functions properly.

One of the most frequently used CDN solutions is CloudFlare, which also acts as a DDoS mitigation service. While using it, you can encounter two versions of the 504 gateway timeout error.

If the error message mentions CloudFlare, then the issue originates there. You can check the Cloudflare system status to clarify whether the company is aware of any network issues.

In this case, contacting CloudFlare support is the fastest way to solve the problem. Otherwise, disable the CDN entirely and wait until the DNS is fully propagated.

504 gateway timeout error mentioning CloudFlare.

The following version of the 504 error page indicates the problem stems from the web hosting provider, which you should contact for assistance.

504 error page indicating the problem stems from the web hosting provider.

9. Tweak Server Settings

Web server issues are a common cause of the 504 gateway timeout error on websites powered by VPS hosting services.

If you’re using the Apache web server, the error may be triggered by the execution time limit of PHP scripts.

The HTTP 504 errors are often caused by a proxy connection timeout on websites running on Nginx.

The following 504 error page indicates that the issue is related to an Nginx web server error:

504 error page indicating the issue is related to an Nginx server error,

In the following sections, we’ll discuss tweaking server settings and increasing specific resource limits to solve the 504 gateway timeout error on both platforms.

Apache

Apache users can increase the default timeout value in the httpd.conf file. Add the following line to the Apache configuration file to increase the default timeout value from 300 seconds to 600 seconds:

Timeout 600

The new value will prompt the server to wait longer for the request before timing out.

You can also increase the max_execution_time limit in php.ini for PHP scripts to run longer:

max_execution_time 300

After saving the changes, restart Apache. The HTTP 504 gateway timeout error should be gone if it was caused by an insufficient request timeout limit.

Nginx

If your VPS utilizes the Nginx server as a reverse proxy for Apache, try increasing the following values in /etc/nginx/conf.d/timeout.conf:

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

If you use Nginx with the FastCGI Process Manager (PHP-FPM), you will need to edit the PHP-FPM file. Navigate to /etc/php5/fpm/pool.d/www.conf and add the following line:

Request_terminate_timeout = 300

We also recommend increasing the max_execution_time in php.ini:

max_execution_time 300

Important! Keep in mind that the location of the configuration file varies based on the installation.

Save the changes, restart Nginx, and reload the website.

10. Contact Customer Support

If the 504 gateway timeout error persists after following all of the above suggestions, it’s best to contact the support team of your web host. Describe what you did during the troubleshooting and provide as much information as possible to speed up the process.

Hostinger users can reach out to our Customer Success team or access the knowledge base from the bottom right corner of the hPanel dashboard page.

The knowledge-base button on hPanel's dashboard

Conclusion

The 504 gateway timeout error is one of the most common HTTP response status codes that internet users encounter. Even though the error message contains limited information on the source of the issue, there are several different methods to troubleshoot the problem.

Here’s a recap of the ten possible solutions on how to fix the 504 gateway timeout errors:

  1. Refresh the page.
  2. Check the hosting’s order usage.
  3. Open the page on a different browser.
  4. Flush the DNS cache.
  5. Open the page on different devices and reboot the network devices.
  6. Check the error log for faulty code and misconfigurations.
  7. Check the installed third-party plugins.
  8. Check the CDN status.
  9. Tweak the Apache or Nginx configuration to resolve server connectivity issues.
  10. Contact the support team of your hosting provider.

We hope this article has helped you resolve the HTTP 504 gateway timeout error. If you have any questions or suggestions on how to deal with this issue, leave a comment below.

504 Gateway Timeout FAQs

The following frequently asked questions discuss more about 504 gateway timeout.

How Long Does 504 Gateway Timeout Last?

The duration of the error depends on the specific cause and how long it takes for the underlying issue to be resolved.

How Can I Prevent 504 Gateway Timeout Errors?

Optimize website performance by minimizing the use of resource-intensive plugins, optimizing images, and minimizing HTTP requests to prevent 504 gateway timeout errors. Additionally, consider upgrading to a higher-tier hosting plan. Hostinger offers an easy way to upgrade your plan.

What Are Some Other Types of Gateway Timeout Errors?

Other types of gateway timeout errors include the 502 Bad Gateway error, which occurs when a server receives an invalid response from a server upstream. Another error is 503 Service Unavailable, which occurs when a server is unable to handle incoming requests due to maintenance, overload, or other issues.

Author
The author

Domantas G.

Domantas leads the content and SEO teams forward with fresh ideas and out of the box approaches. Armed with extensive SEO and marketing knowledge, he aims to spread the word of Hostinger to every corner of the world. During his free time, Domantas likes to hone his web development skills and travel to exotic places.