I've set up an ASP.NET MVC website in my local IIS 7 server.

It was working fine for a while, but suddenly it seems to be returning 503 errors at random intervals, for random requests.

If I browse to it in my web-browser, I'll sometimes get a 503, but times, the page will load, but resources referenced by the page, such as various images, stylesheets and scripts, will fail to load.

Which particular files load or don't load seems to be 100% random and arbitrary. I'm unable to detect any pattern at all.

It literally seems to reject requests whenever it feels like it.

I realize the information here is a bit scant, but can anyone give me an indication of what might be wrong?

(The only unusual thing which I did after setting up the website was to swap the port number on the binding of my website with the port number on the binding of the 'Default' website.)


Turns out that somehow my 'Connection Limit' setting had been set to 1.

Fixed this by opening IIS Manager, selecting the website, clicking 'Advanced Settings' (in the sidebar), expanding 'Connection Limits' and changing 'Maximum Concurrent Connections' to 10.

  • Excellent! I have been dealing with a problem with this for months now and finally found an answer. Thanks! – Shawn Steward Mar 21 '12 at 21:10
  • Great! my setting was 5 . Thank you for sharing your experience. – YongUn Choi Aug 19 '20 at 8:13

To get a better understanding of why some requests fail with HTTP 503, you could set up Failed Request Tracing.

Add a rule matching status code: 503, and add all available providers.

If you don't use the Default Website for anything, just go ahead and remove it.


I had the a similar issue with the images not loading properly and this post helped me a lot. My issue was due to the "max number of concurrent request" and the "time period" settings under the dynamic the IP address and domain restrictions (in IP address and domain restriction). I had to increase or remove it to get the images load properly.


Failed Request tracing won't help much, it will simply tell you what happened (503-error) not why it happened.

Instead, check the http.sys logs

Located in %SystemRoot%\System32\LogFiles\HTTPERR

It will tell you the exact reason in the s-reason column. Like QueueFull or something.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.