2010-11-28 6 views
1

더 많은 웹 응용 프로그램을 만드는 웹 응용 프로그램을 개발 중입니다.여러 web.config 파일이있는 ASP.NET 3.5 응용 프로그램 (IIS 7)

각 웹 응용 프로그램은 URL 다시 쓰기 규칙 (URL REWRITE MODULE 2.0)을 가져야합니다.

내가 아는 한 web.config 파일을 수정하지 않고도 이러한 규칙을 추가 할 수있는 방법이 없습니다.

제 계획은 여러 web.config 부분 파일로 작업하는 것이 었습니다. 하나의 주 .config 파일과 응용 프로그램 당 많은 .config 파일 (모든 파일에는 웹 응용 프로그램의 URL 다시 쓰기 규칙이 들어 있습니다).

이 방법은 조금 어수선하지만 나는 다른 것을 생각할 수 없으며 제안을 환영합니다.

루트 응용 프로그램에 매우 많은 web.config 파일을 사용할 수 있습니까?

미리 감사드립니다. Gal.

답변

0

당신이 다른 내부의 Web.config에 명령을 제거 트릭 많이 사용하는 그물 4

갈 경우 exept, 전체의 Web.config 및 부분하지 있어야 모든 응용 프로그램과 여기에 사용하면 안되는 부모 설정을 제거하십시오.

예를 들어 주 루트에서 다른 트리에서 사용하지 않은 모듈을 사용하는 경우 다른 모든 web.config에서 제거 명령을 사용하여 제거하십시오. 하나의 Bin에 있고 다른 디렉토리 bin에없는 모듈은 특히 그렇습니다.

<httpModules> 
    <remove name="TheHttoModuleNotNeedHere" /> 
    <remove name="AnonymousIdentification" /> 

    ... add here your other modules for that directory... 
</httpModules> 

제거 명령은 config의 거의 모든 세션에서 작동합니다.

당신이 할 수있는 일은, 내가 해냈지만, 모든 충돌/불필요한 구성을 찾아 제거하는 작업이 많이 있습니다.

다른 세션에는 명령도 있습니다. 예를 들어 역할 관리자에서 all을 지우고 new를 추가 할 수 있습니다.

<roleManager enabled="true" ...> 
    <providers> 
    <clear /> 
    <add name="MyName" ... type="System.Web.Security.SqlRoleProvider" /> 
    </providers> 

이 도움말이 도움이되기를 바랍니다.

1

다음 태그는 트릭을 수행합니다. 내 웹 사이트에서 실행되는 두 개의 다른 응용 프로그램에 두 개의 web.config 파일을 사용할 때이 태그가없는 것이 내 문제의 주요 원인이었습니다.

**<location path="." inheritInChildApplications="false">** 
    <system.web> 
    <!-- ... --> 
    </system.web> 
**</location>** 
관련 문제