或许是_2017年_最新的_ngx_pagespeed_安装姿势
来源:互联网 发布:淘宝名字叫什么好 编辑:程序博客网 时间:2024/06/05 04:56
原文链接
或许是 2017年 最新的 ngx_pagespeed 安装姿势
只看楼主 更多操作楼主 发表于: 前天 13:46
— 本帖被 不靠谱贝贝 设置为精华(2017-05-09) —
前言
像 WP 的 W3TC 插件,除了缓存功能外,还有 js、css 的优化功能,但与其通过 PHP 到 WordPress 再到插件还不如直接在 Web 服务器阶段就完成对 js、css 还有图片的处理,这里就介绍一下神器 PageSpeed。
目前谷歌官方有维护 对应 Apache Httpd 的 mod_pagespeed 和 对应 Nginx 的 ngx_pagespeed,也有非官方的,例如 LiteSpeed 团队就有根据 ngx_pagespeed开发对应 LS 的 pagespeed。
这里我们讲 ngx_pagespeed
介绍
ngx_pagespeed 可以自动优化网页和关联资源(CSS,JavaScript,图片),缩短网页的加载时间,而无需修改现有内容或工作流程,实现加快网站的的速度。
主要特性:
图像优化:剥离元数据、动态调整,重新压缩
CSS和JavaScript压缩、合并、级联、内联
小资源内联
推迟图像和JavaScript加载
对HTML重写、压缩空格、去除注释等
提升缓存周期
更多
此页面 可以查看一些重点功能的优化先后表现
安装
需求: gcc ≥ 4.8 或 clang ≥ 3.3
依赖
RedHat/CentOS/Fedora:
复制代码
- yum install gcc-c++ pcre-devel zlib-devel make unzip
Ubuntu/Debian:
复制代码
- apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip
下载
复制代码
- cd /root
- wget https://github.com/pagespeed/ngx_pagespeed/archive/v[PageSpeed版本]-beta.zip
- unzip v[PageSpeed版本]-beta.zip
- cd ngx_pagespeed-[PageSpeed版本]-beta/
- wget https://dl.google.com/dl/page-speed/psol/[PageSpeed版本]-x[系统位数].tar.gz
- tar -xzvf [PageSpeed版本]-x[系统位数].tar.gz
例如:
复制代码
- cd /root
- wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-beta.zip
- unzip v1.12.34.2-beta.zip
- cd ngx_pagespeed-1.12.34.2-beta/
- https://dl.google.com/dl/page-speed/psol/1.12.34.2-x64.tar.gz
- tar -xzvf 1.12.34.2-x64.tar.gz
安装
在原 Nginx 的编译基础上,加入
复制代码
- --add-module=/root/ngx_pagespeed-[PageSpeed版本]-beta
例如,我的 Nginx 本来是:
复制代码
- root@MF8.biz:~# nginx -V
- nginx version: nginx/1.11.10
- built by gcc 4.9.2 (Debian 4.9.2-10)
- built with OpenSSL 1.1.0e 26 Jan 2017
- TLS SNI support enabled
- configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.1.0e --with-ld-opt=-ljemalloc --add-module=../nginx-ct-1.3.2 --add-module=../ngx_brotli_module-7df1e38 --add-module=../ngx_cache_purge-2.3
加入 --add-module=/root/ngx_pagespeed-1.12.34.2-beta 编译后,即:
复制代码
- root@MF8.biz:~# nginx -V
- nginx version: nginx/1.11.10
- built by gcc 4.9.2 (Debian 4.9.2-10)
- built with OpenSSL 1.1.0e 26 Jan 2017
- TLS SNI support enabled
- configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.1.0e --with-ld-opt=-ljemalloc --add-module=../nginx-ct-1.3.2 --add-module=../ngx_brotli_module-7df1e38 --add-module=../ngx_cache_purge-2.3 --add-module=/root/ngx_pagespeed-1.12.34.2-beta
Oneinstack 安装 PageSpeed
介绍一个主流的一键包如何安装 PageSpeed 吧。
一、查看 Nginx -V,记录 configure arguments
例如,我的是:
复制代码
- ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-ld-opt=-ljemalloc
二、修改 oneinstack/include/upgrade_web.sh
三、以 Nginx 为例,其他两个差不多
找到:
复制代码
- ./configure $nginx_configure_arguments
将 configure $nginx_configure_arguments 改为 Nginx -V 的内容,+
复制代码
- --add-module=/root/ngx_pagespeed-1.12.34.2-beta
例如:
复制代码
- ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-ld-opt=-ljemalloc --add-module=/root/ngx_pagespeed-1.12.34.2-beta
四、然后就按升级 Nginx 的流程升级一下就万事大吉了~
[ 此帖被ivmmff在2017-05-09 13:46重新编辑 ]
0 0
- 或许是_2017年_最新的_ngx_pagespeed_安装姿势
- 或许你是对的
- 或许你是最好的
- 梦,或许是另一个世界的真实
- 关于Python模块,或许是这样的:
- 正确的慢跑姿势是怎样的?
- 下一个或许是微软
- 或许是无聊
- 或许是无聊
- 分开或许是选择
- string是charsequence的子类,涨姿势!
- 安装的是Xcode 最新版本,如何新建category文件
- 未来的人工智能交互技术或许是这样的
- 关于编译VLC-Android最新代码的正确姿势
- 服务产品化,或许是中国软件的出路
- 或许是因为本科不是学cs的HTML5原因
- 改变世界,这或许是我的想法
- 比特币居高不上不下,山寨币或许是更好的选择
- CentOS7下内核源码下载及编译步骤
- 如何避免SSH Secure Shell Client连接Linux超时,自动断开?
- 编程实现strcpy和memcpy函数
- android经常性错误解决
- python if判断
- 或许是_2017年_最新的_ngx_pagespeed_安装姿势
- 第三天 H5进阶
- 细粒度图像识别文章 Picking Deep Filter Responses for Fine-grained Image Recognition 阅读笔记
- 解决android libcore局部编译时`out/target/common/obj/JAVA_LIBRARIES/sqlite-jdbc_intermediates/javalib.jar'
- 静态与动态apk overlay 机制
- linux面试题
- Awesome SAR
- gitlab集成ldap配置
- Select查询语句详解(MySQL)