WordPress开启Nginx fastcgi_cache缓存加速

昨天下午没有太多事情,想起来一直想弄的nginx fastcgi_cache还没有弄,于是趁着重装景安服务器的功夫,顺便把这个玩意也搞搞,弄到晚上7点多,走了不少弯路,不过最后总算是搞定了。

方法步骤如下:

一、安装Nginx ngx_cache_purge模块

由于我使用的是oneinstack面板,所以以下的步骤都以此为基础,其他比如lnmp没有试过,可能需要微调一下。

# nginx -V 2>&1 | grep -o ngx_cache_purge 查看ngx_cache_purge是否安装,没有数据表示未安装 cd /root/oneinstack/src wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz tar xzf ngx_cache_purge-2.3.tar.gz #以下几个安装包都是Oneinstack自带的,不同的版本可能会不同,请根据情况调整 tar xzf nginx-1.16.1.tar.gz tar xzf pcre-8.43.tar.gz tar xzf openssl-1.1.1c.tar.gz cd /root/oneinstack/src/nginx-1.16.1 nginx -V #查看nginx编译参数,最后加上--add-module=../ngx_cache_purge-2.3 ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.0.2o --with-pcre=../pcre-8.42 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=../ngx_cache_purge-2.3 make #编译 mv /usr/local/nginx/sbin/nginx{,_`date +%F`} #备份nginx cp objs/nginx /usr/local/nginx/sbin nginx -V 2>&1 | grep -o ngx_cache_purge # 显示ngx_cache_purge表示已经安装成功、

使用Nginx -V查看编译参数添加add-module时,一定要根据你自己的Nginx的编译参数来操作,也就是说保留原来的Nginx参数再加上add-module。例如我的:

二、Nginx开启fastcgi_cache缓存-配置实例

这里我直接贴出我的www.yanjingweb.cn的配置实例

fastcgi_cache_path /tmp/wpcache levels=1:2 keys_zone=WORDPRESS:250m inactive=1d max_size=1G; fastcgi_temp_path /tmp/wpcache/temp; fastcgi_cache_key "$scheme$request_method$host$request_uri"; fastcgi_cache_use_stale error timeout invalid_header http_500; #忽略一切nocache申明,避免不缓存伪静态等fastcgi_ignore_headers Cache-Control Expires Set-Cookie;server { listen 80; listen 443 ssl http2 此处略 set $skip_cache ; #post访问不缓存if ($request_method = POST) { set $skip_cache 1; } #动态查询不缓存if ($query_string != "") { set $skip_cache 1; } #后台等特定页面不缓存(其他需求请自行添加即可)if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") { set $skip_cache 1; } #对登录用户、评论过的用户不展示缓存if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { set $skip_cache 1; } #这里请参考你网站之前的配置,特别是sock的路径,弄错了就502了!location ~ [^/]\.php(/|$) { #fastcgi_pass remote_php_ip:9000;fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"; #新增的缓存规则fastcgi_cache_bypass $skip_cache; fastcgi_no_cache $skip_cache; add_header X-Cache "$upstream_cache_status From $host"; add_header Cache-Control max-age=; add_header Nginx-Cache "$upstream_cache_status"; add_header Last-Modified $date_gmt; add_header X-Frame-Options SAMEORIGIN; # 只允许本站用 frame 来嵌套add_header X-Content-Type-Options nosniff; # 禁止嗅探文件类型add_header X-XSS-Protection "1; mode=block"; # XSS 保护etag on; fastcgi_cache WORDPRESS; fastcgi_cache_valid 200 301 302 1d; } #缓存清理配置(可选)location ~ /purge( /.*) { #为防止转义,请去掉{ /之间的空格allow 127.0.0.1; #此处填写你的服务器IPallow 122.115.122.111; deny all; #请注意此处的WORDPRESS要与上面的keys_zone保持一致fastcgi_cache_purge WORDPRESS "$scheme$request_method$host$1"; }

以下略

至此,全部设置结束,nginx -t 检查以下nginx。然后重新启动一下nginx。service nginx restart

用浏览器打开一个网页,F5刷新几下,看看浏览器的head,就能看到nginx_cache hit字样,说明缓存成功了。然后看缓存文件夹了,也有了一堆的文件。

最后,说一下

开通这个之后,确实打开网页的速度快了不少,在不用CDN的前提下,网页也能秒开了,有动手能力的同学不妨一试。

Read more

开箱|媳妇的华为 Watch Fit 4

开箱|媳妇的华为 Watch Fit 4

媳妇前段时间去南京学习,回来跟我说起一件事:她的同学戴的手表居然能直接接打电话。她说起的时候眼神里有点心动。她平常其实不太喜欢戴这些东西,更结婚没多久的时候,说想要一块手表,也就戴了一段时间,就收藏了起来了。前几年给她买了一只荣耀手环 7,她戴过一阵子,后来也不戴了。 之所以现在又提出来,大概是和她最近工作有关,最近她们科新开了中医护理门诊,有不少患者是冲着她的刮痧来的,所以有时候满手都是刮痧油的情况下,有电话进来的时候,再取手机确实也不太方便。 于是我在京东上搜了一下。没想到就发现了华为 Watch Fit 4 ——白色的表带,颜值简洁大方,价格也不算离谱,不到 800 块钱(如果有国补的情况下,还能便宜不少)。几乎一下就戳中了她的需求,于是毫不犹豫下单。 开箱过程 快递很快,盒子不大,正面是手表的渲染图。拆开之后,里面的东西也很简单: * 手表本体 * 白色硅胶表带(已经装好) * 充电线 * 使用说明书 说实话,这条 充电线还挺让我惊艳的。磁吸式的圆形接口,

By laoliu
粮票里的父爱

粮票里的父爱

前几天在博客群里闲聊,话题莫名其妙地扯到了粮票。我随口说了一句:“当年我爸把全国的粮票攒着不舍得用,说是为了给我和我哥上大学的时候用。”阿均半开玩笑地说:“整理一下这个故事吧,也挺有意思的。”我心里一动,其实不久前还听我爸抱怨呢:“当年给你们攒的粮票,其实也没怎么用上。” 说到粮票,很多年轻人可能都没见过。上世纪八九十年代,粮食和一些生活用品都是按票供应的。手里有粮票才能买粮,没有就只能干着急。那时候的粮票分两种:地方粮票和全国性粮票。地方粮票只能在本地用,而全国性的粮票可以全国通用,更珍贵。 我爸攒的,就是全国粮票。他考虑到我和我哥上大学,不一定会留在甘肃,怕我们去外地没粮票买粮,饿肚子。他省吃俭用,把这些全国粮票默默积攒起来,为我们未来的温饱留着。想象他每天回家,把一张张小票叠好放进抽屉里,那画面真是朴素又让人心安。 求学的道路上,其实父母一直在鼓励我们。父亲看到单位新分来的大学生待遇非常好,意识到知识和学历的重要性;同时,我们家从祖辈开始都没有什么学问,所以望子成龙的期望特别重。放假的时候,除非是集中性的农活,比如收种庄稼、施肥这些有时效的农活,平常的象除草这些活儿都不让我

By laoliu
物必自腐,而后虫生

物必自腐,而后虫生

前几天朋友送了一箱黄桃,一次性吃不了那么多,慢慢的桃子就有点发软,这两天吃桃子的时候,屡屡遇到外表鲜亮,啃两口发现里面已经变质的桃子。这不由的让我想起了一句忘了从哪里看到的话——“物必自腐,而后虫生”。 查了一下资料,出处应该是苏轼的《范增论》。苏轼借楚汉相争,感叹项羽失天下并非因为范增未被重用,而是因为项羽自己内部的问题。于是写道:“物必先腐也,而后虫生之;人必先疑也,而后谗入之。”意思是,万物的败坏,必然从自身腐烂开始,外来的虫子不过是乘虚而入;人的失败,往往是自己心中先起疑念,外来的谗言才有了可乘之机。桃子如此,世间又何尝不是? 一颗桃子,即便外皮光鲜,若果肉先行腐坏,虫子自然会滋生。虫并不是腐烂的原因,而是腐烂的结果。真正决定一颗桃子命运的,不在于外表多么饱满,而在于内里是否坚实清新。 历史上的王朝也是如此。唐宋明清,无不曾强盛一时,但当内部积弊滋生、腐化蔓延时,再坚固的城池也难以自保。外敌入侵只是导火索,真正的根源是自身的腐朽。 组织亦然。一个团队,如果内部保持团结向上,足以抵御风雨;

By laoliu
茶与菩提:慢下来的时光

茶与菩提:慢下来的时光

周末收拾店内的东西,无意中翻出一个纸袋。打开一看,里面是半块普洱茶饼。这块茶饼是媳妇她表哥送的。刚拿到手时,我兴致勃勃地撬下一点泡来喝。慢慢地,三两次、五六次,一块完整的茶饼就被消耗掉了一半。后来是因为茶壶被摔坏了,改用玻璃杯泡绿茶,也就放在那了。都说普洱茶的妙处,就在于它“越陈越香”。这两年,它是不是也在悄悄发生着变化呢? 茶汤里的岁月 普洱分为生普和熟普。生普茶汤清亮,滋味苦涩中带着一丝清甜,回甘悠长,那是岁月的原味,直接而真切。熟普则是经过人工发酵,褪去了青涩,变得醇厚温润。茶汤红浓明亮,入口顺滑,带着独特的陈香,仿佛一位历尽风霜的长者,沉稳而内敛。我这一块,是熟普。撬下一点,用开水冲泡,茶汤渐渐转为红褐色,透着微微的枣香。轻轻啜一口,醇厚顺滑,温润入喉。这不只是一杯茶,更是一段被遗忘的时光。 菩提的光泽 喝茶的时候,瞥见了柜子里的那一串星月菩提。那是2015年买的,这些年不知不觉间,

By laoliu