升级到Varnish 7.1¶
华而不实¶
Varnish现在有了一个基础设施,可以重命名参数或VCL变量,同时保留一个不推荐使用的别名以保持兼容性。
参数¶
有计划对某些论点进行重新命名。发生这种情况时,别名将不会按 param.show [-j|-l]
命令,但它们将由 param.show [-j] <param>
。在以下平台上运行的系统 varnishadm
或者,可以更新Varnish CLI,以便在 deprecated_dummy
为测试目的添加的参数。
不受欢迎的 vsm_space
参数已删除。从Varnish 6.0.0开始,它被忽略且不起作用,并且应该在7.0.0版本中消失。的子参数 -l
命令行选项,用作以下各项的简写 vsm_space
也不再被接受。
命令行选项¶
在启动期间使用CLI脚本时的一种常见模式是将 -I
和 -f ''
用于防止缓存进程自动启动的选项。在这种情况下,启动命令通常出现在CLI脚本中,很可能是最后一个命令。这使得能够加载需要特定顺序的VCL和潜在的VCL标签,如果活动VCL应该将执行切换到标签的话。
为了支持此模式,如果还没有活动的VCL,则不再隐式使用通过CLI脚本加载的VCL。如果没有VCL通过 -b
或 -f
选项它意味着显式的 vcl.use
命令之前,需要使用 start
指挥部。
在上述场景中,情况已经是这样,因为所需的活动VCL可能需要最后加载,而不适合隐式 vcl.use
因为依赖项是首先加载的。此更改不应影响现有 -I
脚本,但如果是这样的话,只需添加缺少的 vcl.use
指挥部。
Varnish的其他变化¶
ESI解析器现在可以识别 onerror="continue"
属性的属性 <esi:include/>
XML标记。
这个 +esi_include_onerror
功能标志控制是否遵守该属性:如果启用,则包含失败将停止ESI处理,除非 onerror="continue"
属性已为其设置。
默认情况下,功能标志处于关闭状态,保留现有行为以在包含失败的情况下继续进行ESI处理。
建议永久存储引擎的用户在引入此更改之前创建的对象不能携带 onerror="continue"
属性,因此将被当作不存在一样处理 +esi_include_onerror
功能标志已启用。
此外,由于此更改不向后兼容,因此此版本不支持使用持久化存储进行降级。
Varnish测试¶
不受欢迎的 err_shell
命令已删除,请使用 shell -err
取而代之的是。
平台支持¶
系统ID¶
为了使终止模式的主进程选择具有确定性,现在在Varnish服务中默认需要一个PID文件。在SERVICE命令用于 ExecStart
被重写,则会引发 -P
选项匹配 PIDFile
需要设置。
eof