预编译的.NET应用程序接收“Internet Explorer无法显示网页”

时间:2010-10-18 15:56:21

标签: asp.net iis-7 windows-server-2008

我们有一个运行许多Web应用程序的Web服务器。当我接管这台服务器时,我注意到网站没有预编译,所以为了清理它,我使用VS2008中的Publish选项预编译了网站(并允许预编译的网站可以更新)。

当我将网站部署到网络服务器时,网站停止工作 - 在IE浏览器中,我得到"Internet Explorer cannot display the webpage" - 在Firefox中我得到"Unable to connect. Firefox can't establish a connection to the server at >>sub.domain.com<<"。以下是我注意到的一些事情:

  • 我可以手动浏览到属于网站的一个静态.html文件
  • 如果我用未编译的代码替换服务器上的预编译文件,该网站可以正常工作
  • 如果我将应用程序池切换为使用.NET 4.0,我会遇到重复的system.web.extensions模块错误,我希望看到这个模块是为.NET 3.5构建的。
  • 当我最初在新的IISRESET之后浏览到该站点时,该应用程序重定向到/Login.aspx,web.config将其定义为表单auth登录页面。然后重定向到/default.aspx并显示有问题的错误。
  • CustomErrors已关闭,调试已启用,但我没有获得有用的.NET错误页面,我在Windows事件日志中看不到任何系统或应用程序级事件。

有关为何可能发生这种情况的任何提示?我能够成功地在同一台服务器上预编译另一个有ZERO问题的网站。

1 个答案:

答案 0 :(得分:0)

我自己发现了这个问题。如果主机头不是localhost,则登录页面将重定向到HTTPS。我注意到,在未编译的站点中,有人手动进入登录页面的.VB文件,并将测试站点的特定域添加到此检查中,从而阻止重定向到HTTPS。我将代码复制到本地,重新编译和部署,现在网站按预期工作。