我在使用 Varnish ESI(边缘包含)时遇到问题:有时使用 ESI 的部分会显示奇怪的字符,如下图所示:
我该如何解决这个问题?有趣的是,有时会出现此问题,但有时不会。
最佳答案
这看起来像是 Varnish 中 gzip 的一个奇怪错误。如果您通过 ESI 获得 gzipped 块并且它不在缓存中(MISS),您会得到这个奇怪的符号。如果您从缓存中获取此块,则一切正常。解决方案是为内部路由禁用 gzip:
if (req.url ~ "/_internal") {
# Telling ESI that we do not support gzip
remove req.http.Accept-Encoding;
.....
关于php - Varnish ESI : strange characters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13364410/