IIS 7 and Above
Application Request Routing (ARR)
The connection to the server was reset while the page was loading
Last post Apr 21, 2014 05:58 AM by Pengzhen Song - MSFT
Apr 18, 2014 05:28 PM|wsadkin|LINK
I am migrating an ancient linux reverse proxy server running Apache and mod_rewrite to a Server 2012 running IIS8, ARR 3.0 and URL Rewrite 2.0. After a lot of internet searches, reading and experimentation (for there are no guides for this process and the
process was not exactly obvious), I managed to get it mostly working, but I had one problem with the site I had a great deal of trouble solving: for some proxied pages, you would get an error (that displayed in Firefox, but not IE) that indicated "The connection
to the server was reset while the page was loading." (In IE11, it just said "This page can't be displayed.")
I managed to solve the problem, but I am writing this post primarily to help others having this issue because it took me over 2 days of constant research to figure out how to solve it, and hopefully this solution will show up in internet searches for anyone
having the same problem.
After much experimentation, I found that if the size of the response page was > 256K (262144 bytes), this error would ensue. Initially I found some articles that suggested this had something to do with Output caching, but changing settings for that had
no effect, and I figred it was just a bug in IIS 8. However, after several more hours searching for a solution, I finally found an obscure article (with a typo in the title):
IIS + ARR: URL rewrite outbound rules with contens greater than 256K gives connection reset. Bingo - same issue! In this, it indicated that what we needed to do was change the Application Request Routing Cache\Proxy Server Settings\Response
Buffer Threshold to much larger value than the default 256K.
However, what stumped me was the fact that I could not find "Application Request Routing Cache" anywhere in the IIS MMC management console, even though I had used Windows Platform Installer to install ARR 3.0. In fact, I could
find no controls for ARR at all. Figuring I had somehow installed things improperly, I uninstalled, rebooted, tried again, tried earlier versions - nothing worked.
I finally found ANOTHER article, entitled: Problems in locating ARR. It turns out I was not the only one with this issue either, and at the bottom of that article, it indicated that if you use the Computer Management (MMC) console to look
at IIS, the ARR feature does not show up, but if you use the Internet Information Services (IIS) Manager instead, then it does! (Why there are two interfaces still eludes me - I wasn't even aware of the latter program until I had discovered this
post.) In that post, the moderator claimed Microsoft had fixed this in ARR 2.0/IIS7, but as of this writing, it's still broken in the same way with Server 2012, IIS8 and ARR3.0.
Long story short (and it really shouldn't have been so hard to diagnose and fix this): If you bring up the
IIS manager (not MMC!), go to Application Request Routing Cache for the server, edit Server Proxy Settings... and raise the Response Buffer Threshold, and change it to something big enough to handle your proxied pages, you can fix this problem.
So the remaining question here is: When will the ARR feature integration be fixed for the Computer Management Interface for IIS on Server 2012/IIS 8?
Apr 21, 2014 05:58 AM|Pengzhen Song - MSFT|LINK
Firstly we are happy that your issue has been resolved. And about mmc issue, I tested it on windows 8.1 and have the same issue. In my opinion, we should directly use iis manager instead of mmc.