产品服务AMH 免费服务器主机面板SSL证书 免费SSL证书申请 担保单 免费安全、零费率交易平台编程助手免费智能写代码、翻译AMYSQL 免费MySQL管理工具

AMH 社区首页

 AMH社区 - 开放自由有价值的社区

[求助帖] Nginx 也玩 WP Super Cache 的 mod_rewrite 模式

ivmm
金牌会员
7207.72 价值分

ivmm 发表于 2014-06-21 17:18:35
修改你的 .conf 文件,一般是 /usr/local/nginx/conf/wordpress.conf 文件。不要原来的拉,直接替换成新的!
注: set $supercache_file /wp-content/cache/supercache/$http_host$1/index${ihttp_host}.html; 必须是实际路径;如果固定链接中含有index.php,去掉。
location / {
if (-f $request_filename) {
break;
}
set $supercache_file '';
set $supercache_uri $request_uri;
set $supercache 1;
set $ihttp_host '';
if ($request_method = POST) {
set $supercache 0;
}
set $qs 0;
if ($query_string) {
set $qs 1;
}
if ($query_string ~* "^utm_source=([^&]+)&utm_medium([^&]+)&utm_campaign=([^&]+)(&utm_content=([^&]+))?[ DISCUZ_CODE_1 ]quot;) {
set $qs 0;
set $supercache_uri $document_uri;
}
if ($qs = 1) {
set $supercache 0;
}
# 针对已登录用户(发表过评论),可以不静态化。在访问量高峰时可注释掉
if ($http_cookie ~* "comment_author_|wordpress|wp-postpass_" ) {
set $supercache 0;
}
#结束
if ($http_user_agent ~* '(iphone|ipod|aspen|incognito|webmate|android|dream|cupcake|froyo|blackberry9500|blackberry9520|blackberry9530|blackberry9550|blackberry 9800|webos|s8000|bada)') {
set $ihttp_host '-mobile';
}
if ($supercache = 0) {
set $supercache_uri '';
}
if ($supercache_uri ~ ^(.+)$) {
set $supercache_file /wp-content/cache/supercache/$http_host$1/index${ihttp_host}.html;
}
if (-f $document_root$supercache_file) {
#rewrite ^(.*)$ $supercache_file break;
rewrite ^ $supercache_file last;
}
if (!-e $request_filename) {
rewrite . /index.php last;
}
}
设置插件这里是重点,因为规则也不是非常的全,所以我们能使用的功能仅有一下四项(意思就是除了这四项都不能选择,推荐选项也不能):
[*]mod_rewrite 缓存模式(必选)
[*]当某页面有新评论时,只刷新该页面的缓存(必选)
[*]“缓存重建”和“移动设备支持”(可选)
[*]当有新文章或页面的发布或更新时清除之前的缓存文件(可选)
[*]将底部的垃圾回收期缓存超时时间更改为0秒:




原谅我不会论坛的排版。

想看的舒服一点还是去博客把:首页> 教程 > 私房菜 - Nginx 也玩 WP Super Cache 的 mod_rewrite 模式



2014-06-21 17:18:35 1
 1  (总1页)
AMH社区列表
用户服务中心