其实不是真的可以另到 Nginx 支持 Apache 的 mod_rewrite 的.因为如果你的web服务器是 Nginx ,那么你的 WordPress 就会提示你的服务器环境不支持 mod_rewrite 了,但实际上是支持的,例如安装了 WP Super Cache 这插件就有这样的提示了,现在我们只要添加一行代码就可以关闭这个提示,欺骗WordPress ,让它认为是支持 mod_rewrite 方法是在主题的 functions.php 文件添加下面的代码:
1 2 3 4 | add_filter('got_rewrite', 'nginx_has_rewrites'); function nginx_has_rewrites() { return true; } |
另外,因为Nginx运行PHP是用PHP-FPM的,所以有时会导致WordPress认为php没有写权限,表现为无法自动升级,和升级插件等,下面这个代码可以修改这个错误.
1 2 3 4 | add_filter('filesystem_method', 'nginx_make_filesystem_direct'); function nginx_make_filesystem_direct() { return 'direct'; } |
我也都有启用来着,但不知道它是干嘛的
@Firm 让一些插件不要提示不支持mod_rewrite啊.有一些插件会检查mod_rewrite的,如果不支持就不能用…
听说有缓存……
求 WP Super Cache nginx版规则..哦耶..
呃。还没用到过那种插件。而且我Nginx的PHP-FPM一样能在线升级和安装插件。没做过修改。@Cat.
第二个filesystem_method这是添加在哪儿的呢。
依旧是主题的Function么?
原来如此啊。。。