2013-04-25 7 views
1

우리는 하늘 호스팅 서비스를 가지고 있으며 이제 ARR (애플리케이션 요청 라우팅)을 설정해야합니다. 나는 블로그 http://robindotnet.wordpress.com/2011/07/를 따라 갔고 ARR은 정상적으로 작동한다. 지금은이에 대한 diskCaching를 활성화해야합니다 내가 명령 아래에 노력하고있어 :디스크 캐시를 활성화하는 동안 Azure ARR 오류가 발생했습니다.

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/diskCache /+"[path='c:\cache',maxUsage='0']" /commit:apphost >> C:\setDiskCache.txt 

그러나 오류가 아래 점점 : ERROR에게 (메시지 :. 필수 속성 누락 새로운 driveLocation 개체 유형의 중복 수집 항목을 추가 할 수 없습니다 'driveLocation '고유 키 특성'경로 '를'c : \ cache '로 설정)

이 폴더에는 콘텐츠가 캐시되지 않습니다. 방향이나 도움을 주시면 감사하겠습니다.

cd /d "%~dp0" 

start /wait msiexec.exe /i webfarm_amd64_en-US.msi /qn /log C:\installWebfarmLog.txt 
start /wait msiexec.exe /i requestRouter_amd64_en-US.msi /qn /log C:\installARRLog.txt 

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/proxy /enabled:"True" /reverseRewriteHostInResponseHeaders:"False" /preserveHostHeader:"True" /commit:apphost >> C:\setProxyLog.txt 

%windir%\system32\inetsrv\appcmd.exe set config -section:applicationPools -applicationPoolDefaults.processModel.idleTimeout:00:00:00 >> C:\setAppPool.txt 

%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/diskCache /+"[path='c:\cache',maxUsage='0']" /commit:apphost >> C:\setDiskCache.txt 

exit /b 0 

내가 IIS [http://www.iis.net/learn/extensions/configuring-application-request-routing 여기 같은 일을 찾을 수 아래

참조에 대한 완전한 cmd를 파일입니다 - (arr)/configure-and-enable-disk-cache-in-application-request-routing]과 같이 수동으로 활성화 할 수 있습니다. 그러나 이것을 프로그래밍 방식으로 활성화해야합니다.

답변

1

흔히있는 것처럼 오류 메시지에는 원인에 대한 힌트가 있습니다. 문제는 드라이브 위치 값당 하나의 항목 만 가질 수 있다는 것입니다. 즉, 처음에는 스크립트가 제대로 실행되지만 값이 이미 적용되었으므로 스크립트가 두 번째로 실행됩니다.

appcmd (컬렉션 지우기를 지원하지 않음)를 사용하여 노드를 제거 할 수는 없지만 텍스트 편집기 (이 파일은 % windir % \ System32 \ inetsrv \ config \ applicationHost.config)를 사용하여 노드를 제거 할 수 있습니다. 아니면 PowerShell 스크립트를 실행 할 수 있습니다 그 후

<driveLocation path="c:\cache" maxUsage="0" /> 

당신은 당신의 코드를 다시 실행 할 수 있습니다 : 어느 경우

Import-Module WebAdministration 
Remove-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.webServer/diskCache" -name "." 

을,이 조작 될 노드입니다.

관련 문제