How to track down the cause of a 400: Bad Request web service call to localhost

400asp.netiis-6web serviceswindows-server-2003

This is on Windows Server 2003 Running IIS.

I have an ASP.NET 2.0 website which is also hosting some web services. When the site makes a webservice call to itself (localhost), I get back a 404: Bad Request.

I would like to see the actual request coming into IIS, but I can't think of a way to do it. Wireshark doesn't work since it's localhost, Fiddler is useless. I can't modify/redeploy code, but I can reset the machine if I need to.

Suggestions?

Best Answer

I tracked it down by looking at the IIS error log in systemroot\System32\LogFiles\HTTPERR. There I saw that the cause of the 400 was HOSTNAME. From there I determined that localhost was being resolved to a different IP address than the one on which IIS was listening.