我目前正在编写我的 Wordpress 博客,该博客托管在 VPS.NET VPS 上,使用 Nginx 作为 Apache 的前端来提供静态文件,而 Apache 负责 FastCGI 中的 PHP。这似乎工作得很好,但是我还没有设法让 Nginx 也提供 WP-SuperCache 文件,我希望获得最大性能(我现在不打算用 Nginx 完全替换 Apache,因为我有Virtualmin 许可证,它不支持 Nginx)。我已经尝试了很多在这里和那里找到的规则,但最后没有一个对我有用,或者我错过了一些东西。如果 Apache 停止了,其实我仍然可以直接通过 Nginx 获取图片、样式表和 javascript 到浏览器。但是,如果我尝试在 Apache 停止的情况下浏览博客(肯定由 WP-SuperCache 缓存的页面),我从 Nginx 得到的只是“
2 回答
通过 Apache 运行 Nginx 似乎很愚蠢。
设置 Nginx 来提供 php 和动态页面本身,您将获得更快的服务,并且不会遇到 apache 死掉并让您的网络服务器(Nginx)挂起的问题。
如果您的管理面板不支持这一点,那么您可能首先应该只使用 apache。要么做一个,要么做另一个,两者都只是在问问题。
Nginx 可以处理你的 fastCGI。通常,与 Nginx 捆绑在一起,Apache 所做的一切都是消耗资源。
关于 WP Super Cache,如果你创建一个新文件并粘贴它,它会同时给你,而且,当我们谈到它时,FURLs ......
# if the requested file exists, return it immediately
if (-f $request_filename) {
break;
}
set $supercache_file '';
set $supercache_uri $request_uri;
if ($request_method = POST) {
set $supercache_uri '';
}
# Using pretty permalinks, so bypass the cache for any query string
if ($query_string) {
set $supercache_uri '';
}
if ($http_cookie ~* "comment_author_|wordpress|wp-postpass_" ) {
set $supercache_uri '';
}
# if we haven't bypassed the cache, specify our supercache file
if ($supercache_uri ~ ^(.+)$) {
set $supercache_file /wp-content/cache/supercache/$http_host/$1index.html;
}
# only rewrite to the supercache file if it actually exists
if (-f $document_root$supercache_file) {
rewrite ^(.*)$ $supercache_file break;
}
# all other requests go to Wordpress
if (!-e $request_filename) {
rewrite . /index.php last;
}
现在,转到您的虚拟主机文件,或者如果您捆绑您的站点,则转到 nginx.conf,并添加一行如 ..
# Wordpress WP Super Cache plugin and permalinks.
include /usr/local/nginx/conf/wordpress_params.super_cache;
.. 其中 wordpress_params.super_cache 是您所说的我们创建的文件,并给出了相对于我所展示的路径。
然后重新启动 Nginx 并打开 WP Super Cache 插件,对于漂亮的链接,添加一个永久链接结构。
事实上,要正确安装 Nginx,尤其是使用 WordPress 和配置 fastCGI,需要了解很多。如果你愿意,这对你来说将是一个好的开始......
..在 NGINX(FURL 和缓存)上设置 WordPress - VPS Bible Pt 13
关于。Virtualmin .. 我知道您想要一个 CP,但事实是,资源成本大于软件成本.. 加上用 CP 做事需要更长的时间。
我目前正在发布一个包含 21 部分的 VPS 管理系列,它解决了 Nginx CP 的缺失问题。坦率地说,这就是你所需要的。
给定一两个星期,我挑战你告诉我使用 CP 更快或更好:)