nginx和apache添加brotli算法压缩网站-Linux运维-学派吧

有需要服务器方面的需求和咨询,可以联系博主 QQ 7271895

文章目录[隐藏]

  • 什么是brotli?
  • 安装依赖文件[仅限centos]
  • 编译安装brotli库
  • apache/nginx添加编译参数
    • apache/nginx修改配置文件
  • 出错解决办法

什么是brotli?

brotli是Google开发的最新压缩算法,有效减少网站传输数据
具体内容请查看WIKI
https://en.wikipedia.org/wiki/Brotli

安装依赖文件[仅限centos]

yum groupinstall 'Development Tools' -y
yum install cmake -y

编译安装brotli库

wget https://github.com/google/brotli/archive/v1.0.3.tar.gz
tar -zxvf v1.0.3.tar.gz
cd brotli-1.0.3
./configure-cmake
make 
make test 
make install

apache/nginx添加编译参数

 "--enable-brotli"  \
"--with-brotli=/usr/local/lib" \   #apache官方模块,依赖brotli库 

--add-module=../ngx_brotli-master   #添加ngx_brotli模块编译

ngx_brotli模块下载地址
https://github.com/google/ngx_brotli
https://github.com/eustas/ngx_brotli

apache/nginx修改配置文件

http://httpd.apache.org/docs/2.4/mod/mod_brotli.html
apache修改文件 /etc/httpd/conf/extra/httpd-deflate.conf

<IfModule brotli_module> 
 SetOutputFilter BROTLI_COMPRESS;DEFLATE
 SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip no-brotli dont-vary
 BrotliCompressionQuality  6
 BrotliCompressionWindow 18
 AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/css text/xml
 AddOutputFilterByType BROTLI_COMPRESS application/x-javascript application/javascript
 AddOutputFilterByType BROTLI_COMPRESS application/rss+xml
 AddOutputFilterByType BROTLI_COMPRESS application/xml
 AddOutputFilterByType BROTLI_COMPRESS application/json
</IfModule>
#nginx配置文件  
    brotli on;
    brotli_types text/html text/plain text/javascript text/css text/xml text/x-component application/javascript application/x-javascript application/xml application/json application/xhtml+xml application/rss+xml application/atom+xml application/x-font-ttf application/vnd.ms-fontobject image/svg+xml image/x-icon font/opentype;
    brotli_static off;
    brotli_comp_level 6;
    brotli_buffers 8 16k;
    brotli_window 512k;
    brotli_min_length 512;

出错解决办法

nginx: error while loading shared libraries: libbrotlienc.so.1: cannot open shared object file: No such file or directory
可行的解决方案之一,是把对应的库文件做软链接:

# 64 位系统  
 ln -s /usr/local/lib/libbrotlienc.so.1 /lib64 
 ln -s /usr/local/lib/libbrotlicommon.so.1  /lib64

# 32 位系统  
ln -s /usr/local/lib/libbrotlienc.so.1 /lib 
ln -s /usr/local/lib/libbrotlicommon.so.1  /lib

重载nginx,若无报错,即问题解决
nginx -s reload

如果有不懂的、欢迎加入我们学派吧。一起学习交流。右上角站长群

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/645.html

(0)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2018年9月30日 下午7:29
下一篇 2018年9月30日 下午7:29

相关推荐

  • 学派吧-Linux服务器如何配置网站以及绑定域名的详细介绍-linux教程

    Nginx 服务绑定域名的方法 以 YUM 安装的 Nginx 为例,域名绑定需要编辑 Nginx 的配置文件完成,Nginx 配置文件是 /etc/nginx/nginx.conf,将默认的server {…}配置修改成如下: 修改后的意思是: 1、访问 www.123.com,会跳转到 /home/web1 目录; 2、访问 www.abc.com,…

    2019年1月1日
    3.3K00
  • 宝塔开启安全登录忘记目录如何恢复

    前言 为了提高安全性,当前宝塔新安装的已经开启了安全目录登录,新装机器都会随机一个8位字符的目录名,亦可以在面板设置处修改,如您没记录或不记得了,可以使用以下方式解决 解决方法 登陆SSH终端输入以下一种命令来解决1、查看面板入口:/etc/init.d/bt default2、关闭入口验证:rm -f /www/server/panel/data/admi…

    2018年10月22日
    11.7K00
  • 学派吧-Linux不常用却很有用的命令-linux教程

    which命令 用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which命令会在环境变量PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 whereis命令 用来定位命令的二进制程序、源代码文件和man手册页等相关文件的路径。 loc…

    服务器运维 2018年12月19日
    2.1K00
  • 最新腾讯云Moltbot(原Clawdbot)接入QQ 保姆级教程

    QQ 作为月活超过6个亿的国民软件,谁不想在QQ上使用Clawdbot呢,这篇教程教你在QQ上连接Moltbot(原Clawdbot),搭建你的个人助理~ 如果遇到什么使用上的问题,欢迎在评论区留言~ bash ./scripts/upgrade.sh # 运行升级脚本 clawdbot plugins install . #安装新版本的插件 clawdbo…

    2026年1月29日
    42000
  • netstat命令是什么?如何使用netstat命令分享教程

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624商祺云-阿里代理、景安代理、西部代理 netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等 1 常用选项: -a :(a…

    服务器运维 2019年1月15日
    2.3K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
---------官方优惠叠加渠道折扣:通过我们购买腾讯云/阿里云,价格更低,服务更优。更有专业配置指导与服务。微信同步:18838889666----