Lately, I’ve been experiencing more and more app crashes when accessing web sites running on IIS. Not that this necessarily means there is a problem with IIS, but nearly every time I’ve seen a web app on the Internet go belly up lately, the stack traces have revealed the app to be running on IIS. Maybe there are actually more websites running on IIS than I thought, or maybe the software for building apps on IIS just isn’t that good. Or maybe it’s the people who choose to build apps on IIS that aren’t so good. Or maybe it’s my dumb luck.
The first crash tonight was at woot.com, which is finally up after about 30 minutes of downtime. The friendly message, which I have now seen on lots of web sites, told me there had been a “Server Error in ‘/’ Application.” To it’s credit, IIS is apparently set up not to display full error messages to remote computers. However, it does tell me how to modify a file on IIS so that the full error message would be viewable remotely. More importantly, it tells whomever is doing a poor job of running the IIS server that they can create their own custom error page, so that their site visitors don’t have to look at their dirty laundry. Just put the following in the web.config file and update the defaultRedirect attribute to point to a more creative error page. Perhaps a page that says “Upgrading to Apache HTTP server soon.”
<configuration> <system .web> <customerrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/> </customerrors> </configuration>
To the credit of the people who run woot, the photo of tonight’s special sale item (random crap) was overlaid with the text “Now with 30% more server errors!” If they have to use IIS, it’s at least nice that they have a good sense of humor about it.
The next crash was at a website set up by United Airlines. This site also gave me a “Server Error in ‘/’ Application” message after I tried to complete a transaction. However, it then filled the screen with stack-trace-o-plenty. It started with “System.InvalidOperationException: No font selected into device context at Chive.Pdf.Gdi.GdiFontMetrics.get_FontData()”. It appears that somebody’s .NET classes got all wiggly while trying to generate a PDF file. Thank god I don’t have to write Windows gdi code anymore. What a freakin’ nightmare that was.
Going to chive.com redirected to Codify.com. Chive turns out to be a company in the UK that changed their name to Codify last fall. They make software for extranets. Apparently this software can sometimes generate PDF files. But no PDF file for you tonight, says the PDF nazi. No, only stack trace for you.