2012-07-02 3 views
1

우리는과 같이 다양한 경로/폴더에 대한 권한을 설정할 수 있습니다web.config의 조건부 위치 인증? IIS 7.5의 Web.config에서

<location path="logs/elmah/elmah.axd"> 
    <system.web> 
     <authorization> 
     <allow users="[email protected]" /> 
     <deny users="*" /> 
     </authorization> 
    </system.web> 
    </location> 

가이 권한 부여의 조건으로 할 수 있습니까? 예를 들어 로컬 서버 또는 스테이징 서버 또는 베타 또는 기타 서버가 아닌 실제 서버 인 경우에만이 위치를 사용하십시오.

<appSettings> 
    <clear /> 
    <add key="DeploymentEnv" value="Debug" /> 
</appSettings> 

그리고 Web.config의 올바른 값으로 DeploymentEnv을 변경 변환 :

나는 현재 서버가 무엇인지 나타 내기 위해 사용합니다.

답변

4

다른 환경에 대해 다른 Web.config 파일을 사용하는 것이 올바른 방법 일 것입니다. Web.config transformations을보십시오. 이 MSDN article은 스테이징 구성을 구성하는 방법을 보여줍니다.

+0

+1 물론 있습니다. 이미 앱 설정에 변환을 사용하고 있으므로 프로덕션 web.config의 위치 노드 만 포함하도록 변환을 사용해야합니다. –

2

환경에 따라 조건부 web.config 파일을 사용하려는 경우 어떻게 될까요? 기계 이름? IP 주소? 올바른 조건을 고르는 조건을 지닌다면 지저분하고 유지하기가 어려울 수 있습니다.

각 환경에 대해 둘 이상의 구성 파일을 갖는 것이 가장 쉽습니다. 나중에 환경 설정 파일에 추가해야 할 mor 태그가있을 수 있습니다. 별도의 구성 파일을 사용하면 이러한 변경 사항을 관리하는 데 도움이됩니다. production.config uat.config 등의 이름을 적절히 지정하고 다른 환경으로 이동할 때 web.config로 이름을 변경하십시오.