2012-04-02 3 views
0

입력 한 URL을 기반으로 login.aspx로 웹 프로젝트를 설정하고 싶습니다. 로그인동일한 프로젝트에서 로그인을하고 로그인하지 않고 URL을 기반으로합니까?

       but if accesses on www.mywebsite.com/B will be with login. 

내가 websiteID 같은 세션에서 작동하지만이 문제가 발생하지 않고 검색을 할 수 있습니다 -

누군가 액세스 www.mywebsite.com/A이 경우라고 할 수 있습니다. 웹 사이트 ID가 서로 실행 중입니다.

내가 왜 그런 해결책을 B 이유는 공개하지 않는 이유. 다른 사람이 공개되는 일부 사람들에게 사용됩니다.

이런 종류의 나쁜 영향이 있습니까? 2 개의 다른 웹 프로젝트로 분할해야합니까? 나는 다 똑같기 때문에 그렇게하지 않았다. 단지

의 차이가있다. 따라서 2 개의 업로드를 수행하고 2 개의 프로젝트를 유지 관리하는 것이 번거로울 수 있습니다.

의 web.config는 또한 당신의 제안 일 것입니다 무슨 솔루션 A.

에 영향을하면서 내가 asp.net 멤버 자격 공급자 솔루션을 할 수 없기 때문에 또 다른 문제입니까?

Ps; web.config에서 특정 디렉토리 만 보안을 유지하는 것으로 들었습니다. 내가 어떻게 할 수 있니? 이게 도움이 될 수 있니?

편집 : 둘 다 같은 단계 aspx 페이지 있습니다. 로그인 한 후 솔루션 A에서 사용되는 기본 페이지로 리디렉션됩니다. 유일한 차이점은 쿼리 문자열 매개 변수입니다. 이것이 default.aspx를 두 페이지 모두에 대한 첫 번째 검색 페이지로 설정하면 두 가지 모두에 영향을 미칩니다. 쿼리 문자열 매개 변수를 사용하여 보안을 설정할 수없는 경우가 아니라면 web.config의 보안 경로가 작동하지 않습니다. 내가 잘못?

감사합니다.

답변

0

사용중인 아키텍처가 매우 정확하므로 두 개의 다른 응용 프로그램을 만들 필요가 없습니다. 구글 용어를 들어, 로그인이 필요한 페이지에 관련하여

'의 web.config에서 위치 경로'당신이 웹 페이지의 전체 인증을위한 솔루션 및 권한 부여를 얻을 것이다 ,

편집 -> 내가 할 수있는 ' 너무 큰 웹 페이지의 인증 및 권한 부여를위한 해결책을 게시하지 마십시오. 직접 R & D를 수행하면 더 많은 것을 배우고 적절한 해결책을 찾을 수 있습니다.

0
<location path="A.aspx"> 
    <system.web> 
     <authentication mode="Forms"> 
     <forms loginUrl="~/Account/Login.aspx" timeout="2880" /> 
     </authentication> 
    </system.web> 
    </location> 

+0

실제로, 당신은 나를 잘못 잡았거나 충분하지 않다고 아마 설명했습니다. 그들에는 동일한 단계 aspx 페이지가있다. 로그인 한 후 솔루션 A에서 사용되는 기본 페이지로 리디렉션됩니다. 유일한 차이점은 쿼리 문자열 매개 변수입니다. 그렇기 때문에 A.aspx가 두 페이지 모두에 대한 첫 번째 검색 페이지 인 경우 A.aspx를 보호하는 것이이 두 가지 모두에 영향을 미칩니다. 내가 잘못? – batmaci

1

내가 다음 사항을 권장합니다 도움이 될 두 가지의 차이로 현재 응용 프로그램의 두 개의 서로 다른 솔루션 구성을 배포는 사이트를 IIS. 동일한 코드베이스를 유지할 수 있지만 다른 web.config에서 다른 설정을 사용합니다.

"미리보기"솔루션 구성을 만들 수 있습니다. web.preview.config에서 폼 인증 코드를 추가합니다.

여기에서 자세한 내용을 찾을 수 있습니다 당신은 뒤에 코드에서이를 구현할 수 http://www.tomot.de/en-us/article/5/asp.net/how-to-use-web.config-transforms-to-replace-appsettings-and-connectionstrings

+0

글쎄, 지금은 네가 한 말을했다. 하지만 아마도 상당히 어색한 방식 일 것입니다. 2 web.config 파일 (web.config 및 web.config2)을 유지하고 어떤 게시 여부에 따라 web.config라는 이름으로 전환합니다. 링크를 가져 주셔서 감사합니다. 나는 그것을 읽고있다. – batmaci

+0

방금 ​​기사를 읽었습니다. 그게 꽤 좋은 배우지만, 내가 테스트/찌르다 환경 설정을 찾고있는 동안 나를 도울 수 있는지 모르겠지만 오히려 내가 2 web.config 프로젝트를 실행하고 싶습니다 (실제로 1 물리 프로젝트 위에 설명한 것처럼) – batmaci

+0

web.config 변환은 필자의 기사에서 사용한 샘플에만 국한되지 않는다고 생각합니다. web.config에서 자동으로 거의 모든 것을 변경할 수 있습니다. 두 개의 게시 된 사이트의 유일한 차이점은 게시 위치와 web.config 뿐인 것 같습니다. 그 가정에 맞다면, web.config 변환을 사용하는 것은가는 길입니다. – citronas

0

. default.aspx의 페이지로드 중에 websiteID (세션 변수) 값을 확인하고 이에 따라 검색 매개 변수를 변경하십시오. Global.asax의 Session_start에서 websiteID에 기본값을 지정하는 것을 잊지 마시기 바랍니다. 그러면 로그인으로 수정되었는지 쉽게 확인할 수 있습니다.

관련 문제