宝塔面板Nginx 开启Brotli压缩|提高网站页面加载速度 建站必备 WordPress页面压缩加速

tengxunyun cera

宝塔面板开启方法

1.安装libbrotli

  1. cd /www/server
  2. git clone https://github.com/bagder/libbrotli
  3. cd libbrotli
  4. ./autogen.sh
  5. ./configure
  6. make && make install

2.下载ngx_brotli模块及其依赖:

源码地址,是google开源的一个:https://github.com/google/brotli

  1. cd /www/server
  2. #下载brotli
  3. git clone https://github.com/google/ngx_brotli.git
  4. cd ngx_brotli
  5. #更新brotli
  6. git submodule update init

3.先查看目前的Nginx版本信息,使用命令:

  1. nginx V

大致输出内容:

  1. [[email protected] ~]# nginx V
  2. nginx version: nginx/1.15.10
  3. built by gcc 4.8.5 20150623 (Red Hat 4.8.536) (GCC)
  4. built with OpenSSL 1.1.1b 26 Feb 2019
  5. TLS SNI support enabled
  6. configure arguments: user=www group=www prefix=/www/server/nginx withopenssl=/www/server/nginx/src/openssl withldopt=-ljemalloc
  7. (后面省略。。。。。。)

4.

在/www/server/panel/install/nginx.sh  找到Install_Configure(){…}或Install_Nginx(){…}字段,然后找出你要安装的nginx版本号,在下面一行的./configure 后面添加–add-module=/www/server/ngx_brotli即可,记得之间间隔一个英文空格。

  1. addmodule=/www/server/ngx_brotli

截图演示:

直接在宝塔面板文件管理处找到相应文件然后编辑

在./configure后面添加 –add-module=/www/server/ngx_brotli 记得之间间隔一个英文空格

5.回到xshell或者 宝塔shh终端 使用命令开始编译,根据自己的版本,将后面数字改为1.101.121.141.151.171.8、openresty等

下面是1.15的例子:

  1. sh /www/server/panel/install/nginx.sh install 1.15

6.安装好了使用nginx -V查看是否含有模块即可。

 

7.开启Brotli压缩

接下来点击面板左侧软件商店-Nginx设置-配置修改,在http段内添加以下内容来启用Brotli压缩。

  1. brotli on;
  2. brotli_comp_level 6;
  3. brotli_min_length 512;
  4. brotli_types text/plain text/javascript text/css text/xml text/xcomponent application/javascript application/xjavascript application/xml application/json application/xhtml+xml application/rss+xml application/atom+xml application/xfontttf application/vnd.msfontobject image/svg+xml image/xicon font/opentype;
  5. brotli_static always;

(具体的可以去gayhub上看官方的配置文件)

最后点击Nginx设置里的重载配置生效即可。

 

Brotli参数详解:

  1. brotli on; #启用
  2. brotli_comp_level 6; #压缩等级,默认6,最高11,太高的压缩水平可能需要更多的CPU
  3. brotli_buffers 16 8k; #请求缓冲区的数量和大小
  4. brotli_min_length 20; #指定压缩数据的最小长度,只有大于或等于最小长度才会对其压缩。这里指定20字节
  5. brotli_types text/plain application/javascript application/xjavascript text/javascript text/css application/xml text/html application/json image/svg application/fontwoff application/vnd.msfontobject application/vnd.apple.mpegurl image/xicon image/jpeg image/gif image/png image/bmp; #指定允许进行压缩类型
  6. brotli_static always; #是否允许查找预处理好的、以.br结尾的压缩文件,可选值为on、off、always
  7. brotli_window 512k; #窗口值,默认值为512k

8.全部配置好了,就可以使用谷歌浏览器查看下是否开启成功,看到br字段即为成功。

 

 

结束语

最后博主感觉压缩效果还行,有兴趣的可以开一下,对于其它的安装环境,安装方法都差不多,这里默认是Brotli和Gzip共存,并且都启用了,好处就是部分老旧的浏览器不支持Brotli的时候会自动变成Gzip压缩。

本文参考:

  • 自行编译brotli的教程
    https://www.bt.cn/bbs/thread-19179-1-1.html
    (出处: 宝塔面板论坛)
  • 如何给nginx添加第三方模块(geoip)
    https://www.bt.cn/bbs/thread-16118-1-1.html
    (出处: 宝塔面板论坛)
  • Rat’s Blog  https://www.moerats.com/archives/954/

cera aliyun tengxunyun cloudiplc

相关推荐

Linux 宝塔面板免费版开启 waf 防火墙的方法

1、进入宝塔面板,打开 软件管理 > Nginx > 设置 > 配置修改; 2、找到大约在第 13 行的 #include luawaf.conf;,去掉前面的 # 符号(“#”代表注释),保存并重启 Nginx。 3、恭喜你,已经成功开启了防火墙!可以试着访问 http://你的网址/?id=../etc/passwd,页面会弹出拦截提示,如下图: 那么问题来了:该怎么自定义这个防火墙的防护规则呢?别急,请跟我一起来! 还是在宝塔面板里头,打开面板的文件管理,进入 /www/server/nginx/waf 目录,里面的 config.lua 文件就是防火墙的配置文件。每一项的具体含义如下所示: RulePath = “/www/server/panel/vhost/wafconf/” –waf 详细规则存放目录(一般无需修改) attacklog = “on” –是否开启攻击日志记录(on 代表开启,off 代表关闭。下同) logdir = “/www/wwwlogs/waf/” –攻击日志文件存放目录(一般无需修改) UrlDeny=”on” –是否开启恶意 url 拦截 Redirect=”on” –拦截后是否重定向 CookieMatch=”off” –是否开启恶意 Cookie 拦截 postMatch=”off” –是否开启 POST 攻击拦截 whiteModule=”on” –是否开启 url 白名单 black_fileExt={“php”,”jsp”} –文件后缀名上传黑名单,如有多个则用英文逗号分隔。如:{“后缀名1″,”后缀名2”,”后缀名3″……} ipWhitelist={“127.0.0.1”} –白名单 IP,如有多个则用英文逗号分隔。如:{“127.0.0.1″,”127.0.0.2”,”127.0.0.3″……} 下同 ipBlocklist={“1.0.0.1”} …

WordPress通过MySQL数据库批量关闭开启文章评论功能

博客在更换主题后就关闭了文章评论模块,但是仍然有人利用接口恶意评论,今天教大家通过修改WordPress数据库批量关闭开启文章评论功能的办法,自从关闭评论功能后,本站已经没有收到任何垃圾评论了。 在WordPress数据库的posts数据表中,评论的开启有一个专门的字段comment_status管理,如果你有很多文章开启了评论,在WordPress后台设置关闭评论是没有作用的,因为WordPress后台关闭评论的功能只适用于关闭开启后发表的文章,并不会对之前的文章执行关闭操作。要想关闭只能挨着点开文章选择关闭,如果文章数量特别大,操作起来不仅费时还浪费精力,上次关闭博客的文章评论时,就有560多篇文章,所以我选择了直接操作WordPress的MySQL数据库来实现关闭功能,下面是操作步骤。 WordPress后台关闭新文章评论 打开WordPress网站后台,选择左侧设置选项,再选择其中的讨论选项,将其中关于文章默认设置的功能全部取消,即不允许评论。如下图   WordPress通过MySQL数据库批量关闭开启文章评论 这样新发布的文章就不会默认开启评论功能,然后我们对旧文章修改设置。 通过MySQL批量修改文章评论状态 在操作数据库前,切记一定要先备份数据库,否则难免发生意外,数据无价,诸位操作一定要注意。 打开数据库,这个打开方式随便你选择,是使用控制台打开还是使用phpmyadmin看大家喜好,这里为了方便我就用phpmyadmin操作了。选择你网站所在数据库中的posts数据表,这张表中存储的是你的所有文章数据,然后选择sql,输入如下代码点击执行: 关闭评论 update wp_posts set comment_status=’close’; 开启评论 update wp_posts set comment_status=’open’; 成功执行后所有已经发布的文章的评论功能都将被批量开启关闭。

Nginx|Apache|IIS环境下的WordPress伪静态规则

WordPress不建议使用IIS环境!为了让WordPress的链接看起来简洁明了,有时候我们需要为Nginx/Apache/IIS环境下的WordPress设置伪静态规则。比如本站.html链接后缀就是使用Nginx环境下的WordPress伪静态规则来实现的。 不知不觉玩儿WordPress已经快三年了,这三年折腾得不少。从最开始的Apache到现在的Nginx,从开始的5秒打开时间到现在不到1秒….编不下去了,进入今天的主题:Nginx/Apache/IIS环境下的WordPress伪静态规则,如果你修改了WordPress后台左侧菜单中设置——固定链接那么可能你需要这篇文章帮你解决出现的404问题。 Nginx环境下的WordPress伪静态规则 location / { 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 (.*) /index.php; } } Apache环境下的WordPress伪静态规则 # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # …

宝塔面板 WordPress 伪静态的一个小坑

作为某些知名站长说的使用宝塔面板的小白,在使用面板的时候就遇到了一个小坑 不能说是坑吧,也不是面板的问题,只是一个普遍存在的问题 常见的 WordPress 伪静态都是这样子的: location / { 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 (.*) /index.php; } } 宝塔面板的 WordPress 伪静态多了一点东西: index index.html index.php; rewrite /wp-admin$ $scheme://$host$uri/ permanent; 这个 index 有什么用,就是一个优先级的东西,表示 index.html 比 index.php 的优先级高一点,如果两个页面同时存在,就会优先展示 index.html 页面 接着看宝塔站点管理中的默认文档是这样的: index.php index.html index.htm default.php …

微信扫一扫,分享到朋友圈

宝塔面板Nginx 开启Brotli压缩|提高网站页面加载速度 建站必备 WordPress页面压缩加速