2010-11-22 66 views
2

我想建立一个持有页面,以便在网站维护期间我们可以显示适当的内容。如何在IIS7上构建一个持有页面的网站?

购物清单:

  • 易于切换开启/关闭
  • 不希望谷歌BOT认为所有的页面已经消失的NOINDEX/NOFOLLOW
  • 不希望用户看到IIS7的“ERROR 500消失“消息 - 显示我的自定义页面而不是

我们曾经在网站上有一个ASP”持有页面“,所有的URL都将被路由到。由于转移到IIS7和搜索引擎友好URL重写,不再是可行的。

所以相反,我们一直在使用一个单独的IIS站点,它只包含一个Holding Page DEFAULT.ASP和一个404处理程序,以便任何URL都可以路由到该站点。然后,我们必须在IIS配置中切换IP地址或主机标题域名(并且我们有一个旁路PREVIEW.MyDomain.com以在展示期间进入实时站点)

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

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

主要应用程序仍然是经典的ASP,但对于一个控股页面的网站,我们可以实现ASP.NET,如果这让我们渡过了一些障碍。

有没有其他的方法可以在网站中处理这个问题(所有的请求都进入了保存页面,但是有一些后门,这样我们可以在删除保存页面之前测试网站的升级)[请参阅我的下面的想法]

切换IIS站点之间的IP地址(或主机标题名称)目前不是一个光滑的操作 - 手动用一两分钟时间为所涉及的半打IIS站点执行操作。也许我们可以只是,我们可以切换在Web.config文件中 - 尽管我认为这很可能意味着,近期一些以设置更改迷路,在洗涤过程的:(

可能的替代实现:

我们一直在考虑有一个DEFAULT.ASP(我们的网站通过一个ASP页面来处理所有的请求),它允许设置一个标志并显示Holding页面。然后会有一个“后门”让开发者设置一个Cookie(或者IP地址“旁路”列表),以便在升级期间他们可以看到该网站全部正常,然后移除持有页面标记

当前单独的持有站点的一个好处是任何HTML /图像/ CSS都可以部署在那里,而在现场站点上,保持页面必须假定包括图像和CSS文件等在内的任何东西都可能作为升级的一部分被更改 - 然后人为错误进入办法!

回答

0

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

另外,ARR允许您发送任何您想要的任何情况下的任何响应代码。

+0

我花了数小时试图找出如何确实通过ARR重写响应代码。我尝试使用出站规则来重写RESPONSE_STATUS服务器变量,但根据Fiddler,当我尝试重写为503时,仍然收到200 OK。 – 2011-03-07 03:13:34

相关问题