我有一个WordPress网站,我正在尝试使用W3 Total Cache进行缩小。它在Ubuntu 12.04上的nginx上运行。
Rewrite URL structure
选项设为OFF。它无论如何都不起作用,但这种方法需要更少的nginx配置。当我加载网站时,它告诉WP从以下路径加载:
/wp-content/plugins/w3-total-cache/pub/minify.php?file=5fe99/default.include-body.baf22c.js
同样,如果我打开Rewrite URL structure
,那条路径将是:
/wp-content/cache/minify/000000/5fe99/default.include-body.baf22c.js
该文件不存在,如果您尝试转到它,则为404。
查看该目录,我有:
~/public_html/wp-content/cache/minify/000000/5fe99$ ls -lah
drwxrwxrwx 2 www-data www-data 4.0K Jun 26 08:51 .
drwxrwxrwx 3 www-data www-data 4.0K Jun 26 08:51 ..
-rw-r--r-- 1 www-data www-data 13 Jun 26 08:51 default.include-body.js.id
-rwxrwxrwx 1 www-data www-data 13 Jun 26 08:23 default.include.css.id.old
其他可能的解决方案:
chmod 777
,但它从不创建此文件,也不会报告错误。本地nginx.conf文件的内容:
当Rewrite URL structure
为OFF时,这就是所要求的全部内容:
# BEGIN W3TC Minify cache
location ~ /home/MY_HOME_DIR/public_html/wp-content/cache/minify.*\.js$ {
types {}
default_type application/x-javascript;
expires modified 31536000s;
add_header Vary "Accept-Encoding";
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
}
location ~ /home/MY_HOME_DIR/public_html/wp-content/cache/minify.*\.css$ {
types {}
default_type text/css;
expires modified 31536000s;
add_header Vary "Accept-Encoding";
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
}
location ~ /home/MY_HOME_DIR/public_html/wp-content/cache/minify.*js\.gzip$ {
gzip off;
types {}
default_type application/x-javascript;
expires modified 31536000s;
add_header Vary "Accept-Encoding";
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
add_header Content-Encoding gzip;
}
location ~ /home/MY_HOME_DIR/public_html/wp-content/cache/minify.*css\.gzip$ {
gzip off;
types {}
default_type text/css;
expires modified 31536000s;
add_header Vary "Accept-Encoding";
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
add_header Content-Encoding gzip;
}
# END W3TC Minify cache
另一个错误:
与此同时,我也遇到了这个错误:
Recently an error occurred while creating the CSS / JS minify cache: A group configuration for "include-body" was not set.
该插件的作者已将此报告为频繁的误报,但这是两年前的事。我不确定这意味着什么,关于它的信息不多。
所以... 任何有没有得到文件缩小才能在nginx上使用W3 Total Cache?谢谢!
答案 0 :(得分:3)
我通过确保:
部分解决了这个问题 1)nginx.conf
文件已更新为最后一个选项。
这意味着,每次更改缩小选项时,他都必须转到
并复制nginx示例配置并覆盖当前的nginx.conf
2)重新加载Nginx新配置或重新启动Nginx:
nginx -s reload
或
service nginx restart
3)取消选中"重写网址结构" W3TC Minify页面中的选项。
这会使生成的页面的性能稍差,但我没有找到适用于我所有网站的真正解决方法。