在Apache服务器上利用Varnish优化移动端访问的方法

2019-01-17 03:26:11于海丽

   

sub vcl_recv {
      if ( !( req.url ~ ^/admin/) ) {
        unset req.http.Cookie;
      }
    }

有些 cookies 可能非常重要,比如已经登录的用户 cookies 就不应该缓存。所以,你就不会希望排除所有的 cookies。此处使用一个正则表达式可以定义那些 cookies 是我们需要的。也可以下哦那个网上找到很多解决这个问题的方案。对于分析工具的 cookies,你可以添加如下内容:

   

sub vcl_recv {
      // Remove has_js and Google Analytics __* cookies.
      set req.http.Cookie = regsuball(req.http.Cookie, "(^|;s*)(_[_a-z]+|has_js)=[^;]*", "");
      // Remove a ";" prefix, if present.
      set req.http.Cookie = regsub(req.http.Cookie, "^;s*", "");
    }

Varnish 文档中有一个专门的部分讲解 cookies。

在大多数情境下,按照上述配置 Varnish,并移除分析工具的 cookies,将会大大加快网站的访问速度。一旦 Varnish 建立并运行起来,在熟悉了配置的基础上,你就可以微调配置,从缓存规则中获得最佳性能。
进阶

更多资料,请参考 Varnish 官方文档。你应该从现在起尝试一些操作实例,深入了解 Varnish 的基础知识。

您可能感兴趣的文章:

在varnish、squid、apache、nginx中选出一个更好的缓存服务器