VPS参考测评推荐
专注分享VPS主机优惠信息
腾讯云双11

便宜国外vps论坛_WordPress动静分离方法汇总

华为云双11上云嘉年华
主机参考:服务器测评参考推荐网,专注分享服务器优惠信息!如果您想在本站投放您的广告,点此直达!如果您不想付费,您也可以免费投稿您的产品信息,点此直达联系我们
部分文章发布时间较久远,可能存在未知因素,购买时建议在本博客搜索商家名称,可查看相关文章充分了解商家!若非中文页面可使用谷歌浏览器同步翻译!跑路不诚信商家列表

本帖是WordPress性能优化的一个经验贴,原文链接:, 大佬轻喷

现代网页不仅只有一个html,经常还包含了大量js脚本css样式表、图片字体资源文件。因浏览器对单域名连接限制,优化网页加载速度的一个重要手段是动静分离。前文 WordPress性能优化 介绍了常用的WordPress性能优化方法,本文详细介绍几种WordPress动静分离方法

WordPress动静分离方法

动静分离,即将js脚本css样式表、图片图标、字体静态资源文件托管不同域名上,从而浏览器可以同时下载页面内容和静态文件,以达到网页加速的目的。

下面介绍本人所知的WordPress动静分离方法,并指出其优缺点。作为例子,下文中总是以 tlanyan.meWordPress博客域名,static.tlanyan.me静态资源用的域名

WordPress域名替换

我们可以在WordPress页面输出前,将静态资源url替换成静态域名,从而达到动静分离的目的。

具体操作为:

1. 创建动态域名nginx配置文件输入如下内容:

server {
    listen 80;
    server_name static.tlanyan.me; # 请替换成自己的域名

    return 301 $request_uri; # 请替换成自己的域名
}

server {
    listen 443 ssl http2;
    ssl_certificate ssl证书路径;
    ssl_certificate_key ssl密钥路径;
    access_log /var/log/nginx/static.tlanyan.access.log main buffer=64k flush=30s;
    error_log /var/log/nginx/static.tlanyan.error.log;

    root /var/www/tlanyan; # 请修改成网站实际目录

    # 非静态资源转发到主站。此配置涉及到安全问题,非常重要,请务必配置!!
    location / {
xx
}

2. 在网页内容输出前,修改静态资源域名静态域名。具体操作是:编辑主题functions.php文件,加入如下内容:

function replace_domain($content) {
xxx
}

add_action(‘init’, ‘replace_domain’);

接下来重启Nginx,刷新网站文章,看看图片js文件路径的域名有没有换成静态域名吧。

修改WordPress上传域名

对于WordPress,除了主题所用的css字体静态资源,主要静态资源用户上传图片文件。好消息便是,用户可以定义上传目录上传域名,从而轻松做到静态分离。

操作方法为:

1. 登录网页后台打开 https://你的域名/wpadmin/options.php只能手动在浏览器打开),找到 upload_path 和 upload_url_path 两个选项,第一选项用来设置上传图片存放的文件夹(默认wordpress安装目录/wpcontent/uploads),第二个是设置文件域名
WordPress定义上传文件域名
WordPress定义上传文件域名

2. 我们修改 upload_url_path静态域名,然后页面拖到下面点击保存修改”;

3. 新建静态域名Nginx配置文件输入如下内容:

server {
    listen 80;
    server_name static.tlanyan.me; # 请替换成自己的域名

    return 301 $request_uri; # 请替换成自己的域名
}

server {
    listen 443 ssl http2;
    ssl_certificate ssl证书路径;
    ssl_certificate_key ssl密钥路径;
    access_log /var/log/nginx/static.tlanyan.access.log main buffer=64k flush=30s;
    error_log /var/log/nginx/static.tlanyan.error.log;

    root /var/www/tlanyan/wpcontent/uploads; # 请修改成网站实际目录,注意根目录wpcontent/uploads
}

由于 wpcontent/uploads 目录只有上传文件,不存在敏感信息,因此无需做额外安全设置

4. 经过上述配置,新文章中的图片会使用静态域名,但旧文章还是原来的链接我们可以通过数据库批量更新链接,操作为:登录数据库,执行这个SQL语句:update wp_posts set post_content=replace(post_content, ‘tlanyan.me/wpcontent/uploads’, ‘static.tlanyan.me’);。注意语句中的tlanyan.me域名请换成你自己的域名

这样,文章中的图片文件链接便与文章做到动静分离了。

Nginx重定向

如果我们使用Nginx作为前端服务器可以通过Nginx重定向功能将所有的静态资源请求转到静态域名

操作如下:

1. 按照 WordPress域名替换 的方法新建静态域名Nginx配置文件

2. 在主域名Nginx配置文件静态资源做如下转发处理:

server {
  # 其他配置
  # 静态资源文件重定向
  location ~* .*.(js|css|png|jpeg|jpg|bmp|ico|ogg|ogv|svg|svgz|eot|otf|woff|woff2|mp4|ttf|rss|atom|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
    return 301 $request_uri; # static.tlanyan.me改成你的静态域名
  }
  # 其他配置
}

配置好后记得重启Nginx

Nginx内容替换

WordPress可以做内容替换,Nginx有sub模块同样能替换网页内容,这样无需改动WordPress便能做到静态资源使用静态域名

操作如下:

1. Nginx的PHP处理中增加如下替换命令

location ~ .php$ {
  # 一些fastcgi 配置

  # 替换配置
  sub_filter_once off;
   # 请修改成自己的域名
  sub_filterhttps://tlanyan.me/wpcontent/uploads’ ‘https://static.tlanyan.me’;
}

2. 按照 修改WordPress上传域名 中的方法新建静态域名Nginx配置文件,然后重启Nginx
总结

上文介绍了WordPress动静分离的四种办法,这里简单总结一下四种方法的优缺点:
方法

各路大神回复

注册楼下举报一个。

tlanyan为啥举报

电光: 太长,看起来好复杂

tlanyan: 好久没人发干货了

蝙蝠侠: 大佬威武,学习了,哈哈

蜂蜜柚子茶: 介绍了四种方法啊,一般人只选一种就好了

cquyf支持大佬

tlanyan楼主发的自己原创文章,也是有用的文章为啥人要举报

电光: 感谢

注册: 我也没看懂举报的逻辑在哪。论坛里挺多人用wp,我这个帖子至少有帮助才是

注册支持帮顶,不明为何举报

tlanyan: 用oss不就是动静分离吗

哥们: 这个当然算

尼欧一方通行: 文章太长,论坛自动截断

tlanyan怎么看着 乱乱的.. 排版搞一下哈..

tlanyan我用张戈的一段代码弄了,没改这么多东西

004: 论坛里排版不了,内容太长还被截断了,建议去原文看,或者先收藏,用的时候再看

蝙蝠侠: https://cloud.tencent.com/developer/article/1607761

tlanyan: 没用的,生成网页mysql数据连接太多是慢的主要原因,

注册: 张戈的方法是文中的一种,文章里四种方法,看起来就多了

注册: 只是性能优化的一步,网页生成慢的话改善有限

tlanyan: 学习一下

主机参考zhujicankao.com_收集国内VPSVPS测评主机测评云服务器虚拟主机独立服务器国内服务器高性价比建站主机相关优惠信息
详细介绍和测评国外VPS主机,云服务器,国外服务器,国外主机的相关优惠信息,商家背景,网络带宽等等,也是目前国内最好的主机云服务器VPS参考测评资讯优惠信息分享平台

打赏
转载请注明原文链接:主机参考 » 便宜国外vps论坛_WordPress动静分离方法汇总
主机参考仅做资料收集,不对商家任何信息及交易做信用担保,购买前请注意风险,有交易纠纷请自行解决!

评论 抢沙发