We had the same problem on our IIS 7.5 (Windows Server 2008 R2). There is a delay about ~30 seconds until the web site appears. We also tried to solve it via ScottGu“s blog with no success. So we installed a cronjob that executes C# code and does a fire-and-forget request to the webserver:
public static void WarmUp(string pUrl)
{
var lWebClient = new WebClient();
lWebClient.DownloadStringAsync(new Uri(pUrl , UriKind.Absolute));
}
Execute the WarmUp:
WarmUp("http://hostname");
After that call + ~30 seconds, our web site will appear directly in the browser.