我正在努力让ESI包含在
JSON上下文中被替换.
<esi:include src="http://domain.com/esipath/" />
这不起作用. ESI标签未被替换.
{ "test": "<esi:include src="http://domain.com/esipath/" />" }
我在google上找到了一些资源,并且可能的解决方案似乎是将esi_Syntax设置为0x3以便varnish跳过检查有效的XML.
这似乎不适用于Varnish 4.当我使用运行时参数启动deamon时,我收到以下错误.
Error: Unknown parameter "esi_Syntax".
Varnish 4中是否弃用此设置?
任何想法让这个工作?
解决方法
事实上,该参数在varnish4中被描述.您需要做的是激活ESI_DISABLE_XML_CHECK功能.
对我来说,我编辑/ etc / default / varnish(基于debian的系统)并添加
-p feature=+esi_disable_xml_check
到DEAMON_OPTS参数,例如:
DAEMON_OPTS="-a :6081 \ -T localhost:6082 \ -f /etc/varnish/default.vcl \ -S /etc/varnish/secret \ -s malloc,4GB \ -p feature=+esi_disable_xml_check"