Red Hat Training

A Red Hat training course is available for Red Hat Fuse

12.3.4. 服务提供商缓存控制指令

表 12.6 “http-conf:server Cache Control Directives” 列出 HTTP 服务提供商支持的缓存控制指令。

表 12.6. http-conf:server Cache Control Directives

指令行为

no-cache

缓存无法使用特定的响应来满足后续请求,而不必先评估服务器响应。如果使用此值指定特定的响应标头字段,则限制仅适用于响应中的这些标头字段。如果没有指定响应标头字段,这个限制将应用到整个响应。

public

任何缓存都可以存储响应。

private

公共(共享)缓存无法存储响应,因为响应适用于单个用户。如果使用此值指定特定的响应标头字段,则限制仅适用于响应中的这些标头字段。如果没有指定响应标头字段,这个限制将应用到整个响应。

no-store

缓存不得存储响应的任何部分或调用它的请求的任何部分。

no-transform

缓存不得在服务器和客户端之间响应中修改内容的介质类型或位置。

must-revalidate

缓存必须重新验证与响应相关的过期条目,然后才能在随后的响应中使用该条目。

proxy-revalidate

与 must-revalidate 相同的操作,除了只能在共享缓存上强制执行,并由私有非共享缓存忽略。当使用这个指令时,必须使用公共 cache 指令。

max-age

客户端可以接受其年龄不会超过指定秒数的响应。

s-max-age

与 max-age 相同的操作,只是只能在共享缓存中强制使用,并由私有非共享缓存忽略。s-max-age 指定的年龄会覆盖 max-age 指定的年龄。当使用这个指令时,还必须使用 proxy-revalidate 指令。

cache-extension

指定其他缓存指令的额外扩展。扩展可以是信息或行为。在标准指令上下文中指定了扩展指令,以便不了解扩展指令的应用程序可以遵循标准 指令强制的行为。