【发布时间】:2014-06-24 08:23:56
【问题描述】:
我们在 Sitecore 网站前使用 ARR 设置了反向代理。我们仅使用此反向代理来提供站点核心媒体项目。 Sitecore 媒体项目正在使用 ARR 正确缓存在磁盘上。
现在我们面临的问题是,对于所有图像,HTTP 状态码始终为 200,因此它们不会缓存在浏览器中。如果我们禁用反向代理,那么 HTTP 状态码是 304,浏览器会从本地缓存中渲染图像。
ARR 不发送 304 状态码有什么原因吗?
更新 #1:下面是我们设置的 ARR 规则:
<rule name="Default ReWrite" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^(.*)" />
<conditions>
<add input="{CACHE_URL}" pattern="^(https?)://" />
</conditions>
<action type="Rewrite" url="http://127.0.0.1/{R:0}" logRewrittenUrl="true" />
<serverVariables>
</serverVariables>
</rule>
【问题讨论】:
-
web.config 中
MediaResponse.Cacheability设置的值是多少?您正在运行什么版本的 Sitecore? -
@computerjules,我使用的是 Sitecore 6.6,MediaResponse.Cacheability 设置为“public”。
-
这个设置没问题。你能提供你定义的ARR规则的设置吗?
-
@computerjules,我已经更新了相关的 ARR 规则。
-
嗯.. 我试过在 IIS 8.5 上重现这个但没有运气。
标签: iis-7.5 sitecore arr http-status-code-304