在global.aspx:
void Application_BeginRequest(object sender, EventArgs e)
{
if (ConfigurationManager.AppSettings["MaintenanceMode"] == "true")
if (!Request.IsLocal)
if (Request.CurrentExecutionFilePathExtension == ".aspx")
HttpContext.Current.RewritePath("Maintenance.htm");
}
在web.config:
<appSettings>
<add key="MaintenanceMode" value="true"/>
</appSettings>
<location path="Maintenance.htm">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
当通过Visual Studio在本地运行网站时,一切都很好,
但是在网络服务器上我得到了一个用户名/密码登录窗口,
按Cancel
后显示401信息
此外,登录窗口不接受输入正确的用户名和密码
我正在使用表单身份验证。
欢迎任何建议。
答案 0 :(得分:0)
将Maintenance.htm
文件更改为ASPX
格式解决了这个问题。
答案 1 :(得分:0)
我只想注意搜索此错误的任何人,它可能是由web.config中的各种错误引起的。
这个web.config是web.config的精髓,为我解决了这个问题
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<security>
<authentication>
<anonymousAuthentication userName="" />
</authentication>
</security>
</system.webServer>
</configuration>