嘟嘟社区

[经验] WordPress访问速度优化 个人经验篇


本帖最后由 大猫熊 于 2022-9-5 15:01 编辑

继上个帖子:https://hostloc.com/thread-1069801-1-1.html

原本从Nginx换成OpenLiteSpeed 另外+mysql+redis+php7.4  洛杉矶普通线路VPS

感觉速度很理想了。深夜发帖让各位吴彦祖测速后,大佬对OpenLiteSpeed做出了详细的了解。

经过今天再次与NGINX对比后,发现无论是并发,还是速度上  NGINX确实略胜一筹,当然 也有可能我的测试方法不太对。

以下就分享下我的0ip小破站优化的方案,大佬勿喷,有兴趣的吴彦祖可以拿测试站自行测试。

再贴个自己站的链接:www.i996.icu

NGINX全局设置:

软件商店找到Nginx,点击设置按钮,在配置修改中添加以下内容:

fastcgi_cache_path /tmp/wpcache levels=1:2 keys_zone=WORDPRESS:250m inactive=1d max_size=1G;
fastcgi_temp_path /tmp/wpcache/temp;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
fastcgi_cache_use_stale error timeout invalid_header http_500;
#忽略一切 nocache 申明,避免不缓存伪静态等
fastcgi_ignore_headers Cache-Control Expires Set-Cookie;

网站设置
在宝塔后台的网站列表中,找到你的网站,并且点击设置按钮,将以下代码添加到配置文件中去:

  1. set $skip_cache 0;
  2. #post 访问不缓存
  3. if ($request_method = POST) {
  4.         set $skip_cache 1;
  5. }   
  6. #动态查询不缓存
  7. if ($query_string != "") {
  8.         set $skip_cache 1;
  9. }   
  10. #后台等特定页面不缓存(其他需求请自行添加即可)
  11. if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
  12.         set $skip_cache 1;
  13. }   
  14. #对登录用户、评论过的用户不展示缓存
  15. if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
  16.         set $skip_cache 1;
  17. }
  18. #这里请参考你网站之前的配置,特别是sock的路径,弄错了就502了!如果你的网站使用PHP7.4,就写-74.sock
  19. location ~ [^/].php(/|$)
  20. {
  21.     try_files $uri =404;
  22.     fastcgi_pass unix:/tmp/php-cgi-74.sock;
  23.     fastcgi_index index.php;
  24.     include fastcgi.conf;  
  25.     add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
  26.     #新增的缓存规则
  27.     fastcgi_cache_bypass $skip_cache;
  28.     fastcgi_no_cache $skip_cache;
  29.     add_header X-Cache "$upstream_cache_status From $host";
  30.     fastcgi_cache WORDPRESS;
  31.     add_header Cache-Control  max-age=0;
  32.     add_header Nginx-Cache "$upstream_cache_status";
  33.     add_header Last-Modified $date_gmt;
  34.     add_header X-Frame-Options SAMEORIGIN; # 只允许本站用 frame 来嵌套
  35.     add_header X-Content-Type-Options nosniff; # 禁止嗅探文件类型
  36.     add_header X-XSS-Protection "1; mode=block"; # XSS 保护
  37.     etag  on;
  38.     fastcgi_cache_valid 200 301 302 1d;
  39. }
  40. #缓存清理配置
  41. location ~ /purge(/.*) {
  42.         allow 127.0.0.1;
  43.         allow "服务器外网IP"; # 引号要保留
  44.         deny all;
  45.         fastcgi_cache_purge WORDPRESS "$scheme$request_method$host$1";
  46. }

复制代码

加好之后的截图如下:

NGINX配置
        伪静态:
       

  1. location /
  2. {
  3.          try_files $uri $uri/ /index.php?$args;
  4. }
  5. rewrite /wp-admin$ $scheme://$host$uri/ permanent;

复制代码

添加好之后,重载Nginx设置,PHP扩展安装opcache 最后重启php

很值得借鉴啊  不错不错
自己绑定
真的有用吗 如果并发大。万人访问的有效果吗

江南女子 发表于 2022-9-5 15:12
真的有用吗 如果并发大。万人访问的有效果吗

我拿CC测得  我站没流量  还可以  具体的得自己试试了

OpenLiteSpeed还是不如Nginx,后者优化好了之后速度不比ols慢

louiejordan 发表于 2022-9-5 15:14
OpenLiteSpeed还是不如Nginx,后者优化好了之后速度不比ols慢

确实  我现在就用的nginx

多发点,我朋友需要

hdwan.net 发表于 2022-9-5 15:28
多发点,我朋友需要

你说的这个朋友  莫非是?

你那是没几篇文章而已。

19W文章,你试试?