Fix 503 Service Unavailable Error

What is HTTP error 503 and how to fix it

The error 503 Service Unavailable Error usually means that the Web server is currently unable to handle the HTTP requests. Most of the time this is because the server is too busy or it is down for maintenance.

Microsoft IIS servers provide more specific information about 503 errors by adding an additional number to the error code.

  • 503.0 - Application pool unavailable. The request is sent to an application pool that is currently stopped or that is currently disabled.
  • 503.2 - Concurrent request limit exceeded.
  • 503.3 - ASP.NET queue full. The appConcurrentRequestLimit property is set to a value that is lower than the current number of concurrent requests.
The Retry-After response-header field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected to be unavailable to the requesting client. In the first example the client needs to retry the request after an exact time, while in the second example, the client needs to retry the request after two minutes.

Retry-After: Mon, 11 Aug 2014 12:00:00 GMT
Retry-After: 120

If you are writing your own web application in PHP, you can respond with 503 status code with the following code:

$protocol = "HTTP/1.1";
header( "$protocol 503 Service Unavailable", true, 503 );
header( "Retry-After: 120" );

HTTP 503 error codes and Google

If you send an HTTP error 503 code for your robots.txt, Google will halt all the crawling on your domain until it's allowed to crawl the robots.txt again.
This is actually a very useful way of preventing load on your server when doing maintenance. It still requires you to send a 503 for every URL on your server, including all static ones, but after Google has re-fetched the robots.txt it’ll probably stop hammering your server(s) for a while.

Debug 503 Service Unavailable Errors with HTTP Debugger

HTTP Debugger automatically detects and highlights red the 503 status codes. The error details are available in the response details pane.



Copyright Notice: Please don't copy or translate this article without prior written permission from the HTTPDebugger.com

HTTP Debugger is a proxy-less HTTP analyzer for developers that provides the ability to capture and analyze HTTP headers, cookies, POST params, HTTP content and CORS headers from any browser or desktop application. Awesome UI and very easy to use. Not a proxy, no network issues!
Download FREE 7-Day Trial

HTTP Debugger

HTTP Debugger - Professional HTTP Analyzer Debug HTTP API calls to a back-end and between back-ends. Very easy to use. Not a proxy, no network issues! Download Free Trial