기본 페이지를 설정할 수있는 섹션이나 코드가 web.config
있습니까?
예를 들어, 사람들이 먼저 내 웹 사이트를 방문 할 때, 나는 그들을보고 싶은 CreateThing.aspx
것이 아니라 Default.aspx
.
내가 이미 알고있는 솔루션 :
-
이 코드 줄 =>
Response.Redirect("CreateThings.aspx")
을Default.aspx
Page_Load
이벤트에 넣으십시오. 그러나이 방법은 순진합니다. -
IIS (기본 페이지 구성)를 사용할 수 있지만 ASP.NET 응용 프로그램에서 동일한 작업을 수행하려고합니다.
-
이것은 현재 다른 해결책이 될 수 있습니다.
<defaultDocument> <files> <clear /> <add value="Default.aspx" /> <add value="Default.htm" /> <add value="Default.asp" /> <add value="index.htm" /> <add value="index.html" /> <add value="iisstart.htm" /> </files> </defaultDocument>
답변
IIS 7 또는 IIS 7.5를 사용하는 경우
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="CreateThing.aspx" />
</files>
</defaultDocument>
</system.webServer>
https://docs.microsoft.com/en-us/iis/configuration/system.webServer/defaultDocument/
답변
팁 # 84 : 알고 계십니까… Visual Web Developer에서 웹 사이트의 시작 페이지를 설정하는 방법은 무엇입니까?
시작 페이지가 될 페이지를 마우스 오른쪽 버튼으로 클릭하고 “시작 페이지로 설정”이라고 말합니다.
Adam Tuliper-MSFT의 아래 의견에서 언급했듯이 이는 배포가 아닌 디버깅에만 작동합니다.
답변
default.aspx를 HttpHandler 경로 로 매핑 하고 HttpHandler 내에서 CreateThings.aspx로 리디렉션합니다.
<add verb="GET" path="default.aspx" type="RedirectHandler"/>
Default.aspx가 실제로 응용 프로그램 루트에 존재하지 않는지 확인하십시오 . 물리적으로 존재하는 경우 HttpHandler는 실행할 기회가 없습니다. 실제 파일은 HttpHandler 맵핑을 대체합니다.
또한 default.aspx 이외의 다른 페이지에서도이를 재사용 할 수 있습니다.
<add verb="GET" path="index.aspx" type="RedirectHandler"/>
// App_Code의 //RedirectHandler.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// Summary description for RedirectHandler
/// </summary>
public class RedirectHandler : IHttpHandler
{
public RedirectHandler()
{
//
// TODO: Add constructor logic here
//
}
#region IHttpHandler Members
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
context.Response.Redirect("CreateThings.aspx");
context.Response.End();
}
#endregion
}
답변
양식 인증을 사용하는 경우 아래 코드를 시도 할 수 있습니다.
<authentication mode="Forms">
<forms name=".FORM" loginUrl="Login.aspx" defaultUrl="CreateThings.aspx" protection="All" timeout="30" path="/">
</forms>
</authentication>
답변
웹 사이트에서 로그인 페이지를 사용하는 경우 web.config 파일로 이동하십시오.
<authentication mode="Forms">
<forms loginUrl="login.aspx" defaultUrl="index.aspx" >
</forms>
</authentication>
인증 태그를 위의 위치로 교체하십시오 (index.aspx는 시작 페이지입니다)
그리고 하나 더 web.config 파일에 이것을 작성하십시오
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="index.aspx" />
</files>
</defaultDocument>
</system.webServer>
<location path="index.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
</configuration>
답변
web.config를 사용하여 IIS 기본 문서 설정을 재정의 할 수 있습니다.
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="DefaultPageToBeSet.aspx" />
</files>
</defaultDocument>
</system.webServer>
또는 IIS를 사용하는 경우 http://www.iis.net/configreference/system.webserver/defaultdocument 에 대한 링크를 참조 하십시오.
답변
다음 방법을 선호합니다.
system.webServer>
<defaultDocument>
<files>
<clear />
<add value="CreateThing.aspx" />
</files>
</defaultDocument>
</system.webServer>
