An ASP.NET MVC project running under IIS 7.5 (but problem may exist on earlier versions and non-MVC sites) which was previously working has started returning 500 Internal Server Error but only for content handled by the static handler – images, pages etc. handled by MVC itself through a controller work fine.
I know what caused it – I am documenting this in case somebody else has the same problem.
I enabled Failed Request tracing and after searching through the (enormous) log, I discovered this:
What has happened is, a new Mime type for serving web-fonts (.woff) had been explicity added to the site.
Later on, the new Mime type (.woff) had also been added to the global IIS mime types.
Instead of the website setting overriding the global setting, an exception was being thrown.