0

嘿,伙计们和女孩们必须得到一个维护信息(我已经得到了)来进行一些重大的重新开发,同时只允许我访问站点进行测试。我已经成功地将该站点进行了维护,但没有人可以访问它,即使是我。该站点托管在 discountASP.com 上,并且正在使用 Umbraco 平台 (v 4.7.1)。

理想情况下,我想将除我之外的所有用户从 default.aspx(或站点的​​任何其他页面)重定向到 maintenance.html。Default.aspx 是我网站的默认页面。

我当前的 default.aspx 页面如下所示:

<%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="True" Inherits="umbraco.UmbracoDefault" trace="true" validateRequest="false" %>

我对任何 ASP.net 都没有信心。(刚接手一个项目,不知道它会在 ASP.net 中使用 Umbraco)。

4

1 回答 1

2

我首先要说的是,最好在开发环境中而不是直接在生产环境中进行维护工作。但是,如果这不是一个选项,有几种方法可以为您的维护页面添加“绕过”逻辑。有几种不同的方法可以实现这一点。想到的一个想法是向 default.aspx 页面添加一个可选的查询字符串参数,该参数将告诉您的代码跳过重定向。

Ex: Default.aspx?skipMaintenanceMessage=true

如果设置了此参数,您可以跳过重定向。

在 Default.aspx.cs 中,您可以添加类似

if(Request.QueryString["skipMaintenanceMessage"] != "true")
{
   Response.Redirect("maintenance.html");
}

另一种方法是在用户名级别处理它并添加逻辑以不重定向您的登录用户(如果您有登录用户)

于 2013-10-24T05:04:10.243 回答