나는이 같은 .config 파일에서 구성을 사용하고자하는 ASP.NET 응용 프로그램에서 리디렉션 : 그래서는
<appSettings>
<add key="SiteIsActive" value="false"/>
<add key="SiteNonActive_RedirectTo" value="UnderMaintainance.aspx"/>
</appSettings>
, 설정이 잘못된 값으로 설정되면, 시스템은 자동으로 모든 요청을 유지 보수 페이지로 리디렉션합니다. Global.asax에의 Application_BeginRequest 사용 :
나는이 방법으로이 작업을 수행하려고protected void Application_BeginRequest(object sender, EventArgs e) {
if ((bool)System.Configuration.ConfigurationManager.AppSettings["SiteIsActive"])
if (this.Request.Path.IndexOf(
System.Configuration.ConfigurationManager.AppSettings["SiteNonActive_RedirectTo"]) == -1)
this.Response.Redirect(
System.Configuration.ConfigurationManager.AppSettings["SiteNonActive_RedirectTo"]);
}
은 기본적으로 작동을하지만,이 방법으로 리디렉션 할 때, 파이어 폭스가 적용된 이미지 나 스타일없이 나에게 페이지를 표시합니다. .. 이상하다, 나는 브라우저에 의해 다운로드 된 페이지 소스를보고 모든 것이있다!
이것이 내 목표를 달성하는 올바른 방법입니까? 내가 잘못 했습니까?
감사합니다
PS : Internet Explorer가 제대로 나에게 리디렉션 페이지를 보여줍니다, 파이어 폭스처럼 행동하지 않습니다.
PS2 : 여러분이 올바르게 App_Offline이라는 기능을 사용할 수 있다고 게시했습니다. 글쎄, 난 하나의 이유로 사용하지 싶습니다 내가 예를 들어, 하나 개의 상태,하지만 더 상태를 표시하지 않도록 단지 내 유지 관리 - 페이지를 사용하고 싶습니다 :
<appSettings>
<add key="SiteIsActive" value="false"/>
<add key="SiteNonActive_RedirectTo" value="UnderMaintainance.aspx?S=Maintainance"/>
</appSettings>
2
1) 유지 관리 -) 건설
<appSettings>
<add key="SiteIsActive" value="false"/>
<add key="SiteNonActive_RedirectTo" value="UnderMaintainance.aspx?S=UnderConstr"/>
</appSettings>
3)
<appSettings>
<add key="SiteIsActive" value="false"/>
<add key="SiteNonActive_RedirectTo" value="UnderMaintainance.aspx?S=TempInact"/>
</appSettings>
App_Offline 할 임시 활동에서 나 한테 이걸 제공하지 않아.
App_Offline.html을 확인하셨습니까? 그냥 팁. – alexn
이 IIS6 또는 IIS7입니까? – Kev
나는 당신이 이것을 복잡하게 생각한다고 생각합니다. App_Offline 페이지를 App_Offline.maint', App_Offline.under','App_Offline.temp'과 같이 세 개의 다른 App_Offline 페이지로 유지할 수 있습니다. 'App_Offline.htm'에 적용되는 이름을 변경하십시오. 즉, 예를 들어 web.config 설정을 해치거나 DLL을 떨어 뜨리면 .aspx 페이지가 실행되지 않을 위험이 결코 없음을 의미합니다. – Kev