网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

WordPress优化加速 Nginx+WP Fastest Cache全静态化

GG网络技术分享 2025-03-18 16:15 1


WordPress优化加速 Nginx+WP Fastest Cache全静态化

在使用Nginx+WP Fastest Cache时,虽然页面做了缓存,但并不是真正的缓存,请求仍然需要通过PHP解析器来处理,最简单的验证方法时把网站目录的index.php修改个名字,网站就挂掉了。

宝塔伪静态设置里用以下伪静态规则,可以使你的WP Fastest Cache达到真正的完全静态,(甚至PHP进程挂掉,网站依旧能正常运行):

location / {

# 如果请求的文件已存在,直接返回

if (-f $request_filename) {

break;

}

set $caches 1; #是否缓存

set $request_file $document_uri; #获取请求文件

set $cache_file ''; #缓存文件

#请求方式是POST的不拦截

if ($request_method = POST) {

set $caches 0;

}

#包含GET请求参数的不拦截(访问量高可以注释掉)

if ($query_string) {

set $caches 0;

}

# 指定静态缓存文件的路径

if ($caches = 0) {

set $request_file '';

}

if ($request_file ~ ^(.+)$) {

set $cache_file /wp-content/cache/all/$1/index.html; #你的WP Fastest Cache缓存目录

}

# 命中缓存

if (-f $document_root$cache_file) {

rewrite ^ $cache_file last;

}

# 无法命中缓存,转给WordPress来处理

if (!-e $request_filename) {

rewrite . /index.php last;

}

}

# 以下是子目录n的伪静态,没有子目录的忽略

location /n/ {

index index.html index.php;

if (-f $request_filename/index.html){

rewrite (.*) $1/index.html break;

}

if (-f $request_filename/index.php){

rewrite (.*) $1/index.php;

}

if (!-f $request_filename){

rewrite (.*) /n/index.php;

}

}

rewrite /wp-admin$ $scheme://$host$uri/ permanent;

解决WordPress后台卡顿问题

将以下代码添加到你的wp-config.php文件中。

define( 'AUTOSAVE_INTERVAL', 120 );

这会将自动保存频率设置为2分钟一次,而不是默认的1秒一次。

监控WordPress插件性能

WordPress最迷人的地方之一就是有着大量的免费插件,但是各种插件开发理念不一,代码质量良莠不齐,一不小心就会导致某些插件占用大量服务器性能。

你可以安装query-monitor插件来监控插件的性能情况。

插件激活后会在WordPress顶部工具栏插入一个新菜单

点击它会打开监控器控制台,点击左侧菜单的“Queries by Componen”就可以看到每个插件占用的服务器资源数量了。

禁用占用资源异常的那个插件,看看访问速度有没有提升吧。

标签:

提交需求或反馈

Demand feedback