<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[Wordpress下的nginx helper插件结合Nginx的ngx_cache_purge插件配合缓存前端。]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Unix/LinuxC技术]]></category>
<pubDate>Thu, 07 May 2015 14:59:45 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	来自：https://www.cnblogs.com/Eivll0m/p/4921829.html<br/><br/>一）他怎么知道缓存在那个目录呢？<br/>You can add a line in wp-config.php like below:<br/>define( &#039;RT_WP_NGINX_HELPER_CACHE_PATH&#039;,&#039;/var/run/nginx-cache&#039;);<br/><br/>root@101.200.228.135:/data/htdocs/jackxiang.com# grep -r &quot;RT_WP_NGINX_HELPER_CACHE_PATH&quot; ./<br/>./wp-content/plugins/nginx-helper/nginx-helper.php:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;define(&#039;RT_WP_NGINX_HELPER_CACHE_PATH&#039;, &#039;/var/run/nginx-cache&#039;);<br/>./wp-content/plugins/nginx-helper/purger.php:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!defined(&#039;RT_WP_NGINX_HELPER_CACHE_PATH&#039;)) &#123;<br/>./wp-content/plugins/nginx-helper/readme.txt:`define(&#039;RT_WP_NGINX_HELPER_CACHE_PATH&#039;,&#039;/var/run/nginx-cache/&#039;);`<br/><br/>vim打开上面文件替换：<br/>%s/&#92;/var&#92;/run&#92;/nginx-cache/&#92;/data&#92;/cache&#92;/ngx_fcgi_cache2/g<br/>二）总配置：/conf/nginx.conf<br/><textarea name="code" class="php" rows="15" cols="100">
http
&nbsp;&nbsp;&nbsp;&nbsp;&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_path /data/cache/ngx_fcgi_cache&nbsp;&nbsp;levels=1:2&nbsp;&nbsp;keys_zone=ngx_fcgi_cache:128m inactive=1d max_size=1g;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#128m为内存占用&nbsp;&nbsp;1g为硬盘最大占用空间
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_path /data/cache/ngx_fcgi_cache2&nbsp;&nbsp;levels=1:2&nbsp;&nbsp;keys_zone=ngx_fcgi_cache2:128m inactive=1d max_size=1g;
</textarea><br/><br/>三）分配置：/conf/vhost/jackxiang.conf <br/><textarea name="code" class="php" rows="15" cols="100">
set $no_cache 0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;server_name&nbsp;&nbsp;jackxiang.com www.jackxiang.com;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;index index.html index.htm index.php;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;root&nbsp;&nbsp;/data/htdocs/jackxiang.com;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;autoindex off;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;autoindex_exact_size off;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;autoindex_localtime on;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 不缓存POST操作
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($request_method = POST) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set $no_cache 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($query_string != &quot;&quot;) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set $no_cache 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 不缓存后台
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($request_uri ~* &quot;(/wp-admin/&#124;/xmlrpc.php&#124;/wp-(app&#124;cron&#124;login&#124;register&#124;mail).php&#124;wp-.*.php&#124;/feed/&#124;index.php&#124;wp-comments-popup.php&#124;wp-links-opml.php&#124;wp-locations.php&#124;sitemap(_index)?.xml&#124;[a-z0-9_-]+-sitemap([0-9]+)?.xml)&quot;) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set $no_cache 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# 已登录的不缓存（防止留言串号）
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($http_cookie ~* &quot;comment_author&#124;wordpress_[a-f0-9]+&#124;wp-postpass&#124;wordpress_no_cache&#124;wordpress_logged_in&quot;) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set $no_cache 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;location / &#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try_files $uri $uri/ /index.php?$args;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;location ~ .*&#92;.(php&#124;php5)?$
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_pass&nbsp;&nbsp; unix:/data/runsock/hhvm.sock;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_index&nbsp;&nbsp;index.php;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_param&nbsp;&nbsp;SCRIPT_FILENAME $document_root$fastcgi_script_name;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;include&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_params;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#no_cache 的值决定是否需要cache下来。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_bypass $no_cache;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_no_cache $no_cache;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache ngx_fcgi_cache2;&nbsp;&nbsp;&nbsp;&nbsp;#表示开启FastCGI缓存并为其指定一个名称。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_valid 200 302 301 1h;&nbsp;&nbsp;&nbsp;&nbsp; #缓存http状态200 302 301 1小时&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_valid any 1m; #其他应答代码缓存1分钟。404
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_min_uses 1;&nbsp;&nbsp; #设置链接请求几次就被缓存。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_use_stale error timeout invalid_header http_500;&nbsp;&nbsp;&nbsp;&nbsp;#定义哪些情况下用过期缓存
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#fastcgi_cache_key $request_method://$host$request_uri;&nbsp;&nbsp;#注意一定要加上$request_method作为cache key，否则如果HEAD类型的先请求会导致后面的GET请求返回为空
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fastcgi_cache_key&nbsp;&nbsp;&quot;$scheme$request_method$host$request_uri&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
</textarea><br/><br/><br/>四）实践一次刷一下，没有问题，文件没了，验证成功：<br/>（1）生成缓存 （2）查看生成的文件 （3）清掉：wordpress的后台=》JACK船长的航海日志---杰克·向。 新建=》Purge Cache 清一次后， （4）果然没有了，验证如下：<br/>root@101.200.228.135:/data/cache/ngx_fcgi_cache2# find . -type f <br/>./4/10/7b85869389993df60d6bab0921e13104<br/>./b/b7/e9d47871f114593bc9ef4ce6deb38b7b<br/>./6/e8/26e4e882b757184cbc3654dea8d7ce86<br/>root@101.200.228.135:/data/cache/ngx_fcgi_cache2# find . -type f<br/>root@101.200.228.135:/data/cache/ngx_fcgi_cache2# <br/>参考自：https://rtcamp.com/wordpress-nginx/tutorials/single-site/fastcgi-cache-with-purging/
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] Wordpress下的nginx helper插件结合Nginx的ngx_cache_purge插件配合缓存前端。]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>