2012-08-22 5 views
0

현재 가지고있는 방식으로 Default.aspx는 비어 있으며 Default.aspx.cs에 대한 코드가 있습니다.이 코드는 요청이 인증되었는지 여부에 따라 Login.aspx 또는 Home.aspx로 리디렉션됩니다.Default.aspx를 Home.aspx 또는 Login.aspx로 리디렉션하는 우아한 방법이 있습니까?

Default.aspx는 아무것도 수행하지 않습니다. 이것에 대한보다 우아한 접근이 있어야만하는 것처럼 보입니다.

모든 아이디어가 우수 할 것입니다.

+0

Default.aspx로 Home.aspx의 이름을 바꾸고 web.config의 Default.aspx에 대한 액세스를 거부하고 formsauthentication 인프라에서 리디렉션을 수행하도록 시도 했습니까? –

답변

2

제 의견으로는 가장 우아한 방법은 web.config를 사용하는 것입니다. 이 외에도에서, 당신은 또한 인증 태그를 통해 현재 폴더의 페이지에 부여 된 액세스가있는 사용자를 지정할 수 있습니다

<authentication mode="Forms"> 
    <forms loginUrl="~/Login/LogOn.aspx" /> 
</authentication> 
<authorization> 
    <deny users="?"/> 
</authorization> 

: 당신은 인증되지 않은 사용자가 자동으로 리디렉션된다는 점, 로그인 페이지를 지정할 수 있습니다.

0

아니요, IIS에는 기본 문서로 사용하기위한 자리 표시자가 필요합니다.

편집 : 기술적으로는 변경할 수 있지만 장기적으로 볼 가치는 없습니다. 컨벤션을 따르고 home.aspx를 default.aspx로 옮기는 것이 훨씬 좋습니다.

0

IIS 수준에서 구성되어야합니다. 즉, 앱의 Default 방문 페이지를 Home.aspx으로 구성 할 수 있습니다. . 그리고 Home.aspx는 자동으로 사용자가 로그인하지 않은 경우 Login.aspx로 리디렉션 IIS 관리자에서 아래 스크린 샷을 참조해야합니다

enter image description here

목록에서 웹 애플리케이션을 선택 -> "기본 문서"을 더블 클릭합니다.

관련 문제