2

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

购物清单:

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

我们曾经在站点中有一个 ASP“保存页面”,所有 URL 都将被路由到该站点。自从迁移到 IIS7 和 SEO 友好的 URL 重写以来,这不再可行。

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

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

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

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

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

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

可能的替代实现:

我们一直在考虑有一个 DEFAULT.ASP(我们的站点通过单个 ASP 页面来处理所有请求),它允许设置一个标志并显示持有页面。然后会有一个“后门”供开发人员设置 Cookie(或者可能是 IP 地址“绕过”列表),以便在升级推出期间,他们可以在删除持有页面标志之前看到网站一切正常。

当前独立的Holding Site的一个好处是可以在那里部署任何HTML / Images / CSS,而在实时站点上,Holding页面必须假设任何东西,包括图像和CSS文件等,都可能作为升级 - 然后人为错误会妨碍您!

4

1 回答 1

0

如果您有不止一台服务器,您可以使用 IIS 的应用程序请求路由插件(它是免费的)。它允许您轻松创建网络农场。您可以从池中拉出服务器,但仍通过其直接 IP 地址进行测试,用户将通过 ARR 服务器访问维护页面。

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

于 2010-11-22T16:04:25.053 回答