如何在IIS7上构建站点保持页面?

时间:2010-11-22 15:55:37

标签: iis-7 http-status-code-503

我想构建一个保留页面,以便在站点维护期间我们可以显示适当的内容。

购物清单:

  • 轻松切换开/关
  • 不希望谷歌BOT认为所有页面都消失了NOINDEX / NOFOLLOW
  • 不希望用户看到IIS7的“ERROR 500消失”消息 - 显示我的自定义页面

我们曾经在网站上有一个ASP“保留页面”,所有网址都将被路由到。自从迁移到IIS7和SEO友好的URL重写后,再也不可行了。

因此,我们一直在使用一个单独的IIS站点,该站点只包含一个保持页面DEFAULT.ASP和一个404处理程序,以便将任何URL路由到该站点。然后我们必须在IIS Config中切换IP地址或主机头域名(我们在推出期间有一个绕过PREVIEW.MyDomain.com进入实时站点)

我们需要设置响应代码 - 我认为503“服务不可用”是最合适的吗? (虽然Custom Error Page for Http Error 503似乎表明IIS7不会显示错误503的自定义页面?)

为防止人们看到IIS7“ERROR 500消失”消息,我认为我们需要设置此“保留站点”以允许详细错误?

主要应用程序仍然是Classic-ASP,但是对于一个持有页面网站,我们可以实现ASP.NET,如果这让我们遇到了一些障碍。

我们是否有另一种方法可以在网站内处理此问题(因此所有请求都会转到保留页面,但是有一些后门,以便我们可以在删除保留页面之前测试网站升级)[请参阅我的想法下文]

在IIS站点之间切换IP地址(或主机头名称)目前不是一个灵活的操作 - 对于涉及的六个IIS站点,手动操作需要一两分钟。也许我们可以只有我们可以切换的Web.Config文件 - 虽然我认为这可能意味着最近对设置的一些更改会丢失在洗涤中:(

可能的替代实施:

我们一直在考虑使用DEFAULT.ASP(我们的网站通过单个ASP页面运行所有请求),它允许设置Flag并显示Holding页面。然后会有一个“后门”供开发人员设置Cookie(或者可能是IP地址“旁路”列表),这样在部署升级期间,他们可以看到该网站在删除持有页面标记之前一切正常。

当前单独的保留站点的一个好处是可以在那里部署任何HTML / Images / CSS,而在实际站点上,保留页面必须假设任何内容,包括图像和CSS文件等,可能会被更改为升级的一部分 - 然后人为错误阻碍了!

1 个答案:

答案 0 :(得分:0)

如果您有多个服务器,则可以使用应用程序请求路由添加到IIS(免费)。它允许您轻松创建Web场。您可以从池中提取服务器,但仍然通过其直接IP地址进行测试,用户将通过ARR服务器访问维护页面。

此外,ARR允许您发送任何情况下所需的任何响应代码。