我们有 azure 托管服务,现在我需要在其上设置 ARR(应用程序请求路由)。我关注了博客http://robindotnet.wordpress.com/2011/07/并且 ARR 工作正常。现在我需要为此启用磁盘缓存,我正在尝试以下命令:
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/diskCache /+"[path='c:\cache',maxUsage='0']" /commit:apphost >> C:\setDiskCache.txt
但出现以下错误:错误(消息:新的 driveLocation 对象缺少必需的属性。无法添加类型为“driveLocation”的重复集合条目,其唯一键属性“path”设置为“c:\cache”。)
并且此文件夹中没有缓存任何内容。任何方向或帮助表示赞赏。
以下是完整的 cmd 文件供参考:
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-(arr)/configure-and-enable-disk-cache-in-application- request-routing],可以手动启用。但是我们需要以编程方式启用它。