ngx_speed 是google推出的,针对nginx apache 服务器做html代码压缩 css文件合并压缩 js文件合并压缩等,这边文章主要介绍如何在nginx 增加 ngx_speed 模块
ngx_speed 官网参考手册 https://developers.google.com/speed/pagespeed/module/config_filters
一、下载ngx_speed 模块
1.1 wget https://github.com/pagespeed/ngx_pagespeed/archive/release-1.11.33.4-beta.zip 可以到官网去寻找最新版本
1.2 ngx_speed 插件 wget https://dl.google.com/dl/page-speed/psol/1.11.33.4.tar.gz
1.3 unzip release-1.11.33.4-beta.zip (如果没有unzip centos 下yum install unzip)
1.4 mv 1.11.33.4.tar.gz ./ngx_pagespeed-release-1.11.33.4-beta 一定要将ngx_speed插件依赖包放入ngx_pagespeed-release-1.11.33.4-beta中
1.5 cd ngx_pagespeed-release-1.11.33.4-beta
1.6 tar -zxvf 1.11.33.4.tar.gz
二、重新编译安装nginx
2.1 如果没有服务器没有安装nginx 参考 链接 http://www.onephper.com/archive/14.html
2.2 如果安装了nginx 则要重新编译
2.2.1 查看原先nginx的编译参数 /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.8.1 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) built with OpenSSL 1.0.1e-fips 11 Feb 2013 TLS SNI support enabled configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-pcre --with-http_ssl_module
2.2.2 重新编译nginx安装模块 (增加--add-module=../ngx_pagespeed-release-1.11.33.4-beta 模块即可)
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-pcre --with-http_ssl_module --add-module=../ngx_pagespeed-release-1.11.33.4-beta
2.2.3 重启nginx
/usr/local/nginx/sbin/nginx -t /usr/local/nginx/sbin/nginx -s reload
三、配置 ngx_speed
3.1 在nginx配置文件server段中配置一下选项
# 启用ngx_pagespeed
pagespeed on;
pagespeed FileCachePath/software/var_temp/nginx/pagespeed/;
# 禁用CoreFilters
pagespeed RewriteLevelPassThrough;
# 启用压缩空白过滤器
pagespeed EnableFilters collapse_whitespace;
# 启用JavaScript库卸载
pagespeed EnableFilters canonicalize_javascript_libraries;
# 把多个CSS文件合并成一个CSS文件
pagespeed EnableFilters combine_css;
# 把多个JavaScript文件合并成一个JavaScript文件
pagespeed EnableFilters combine_javascript;
# 删除带默认属性的标签
pagespeed EnableFilters elide_attributes;
# 改善资源的可缓存性
pagespeed EnableFilters extend_cache;
# 更换被导入文件的@import,精简CSS文件
pagespeed EnableFilters flatten_css_imports;
pagespeed CssFlattenMaxBytes5120;
# 延时加载客户端看不见的图片
pagespeed EnableFilters lazyload_images;
# 启用JavaScript缩小机制
pagespeed EnableFilters rewrite_javascript;
# 启用图片优化机制
pagespeed EnableFilters rewrite_images;
# 预解析DNS查询
pagespeed EnableFilters insert_dns_prefetch;
# 重写CSS,首先加载渲染页面的CSS规则
pagespeed EnableFilters prioritize_critical_css;
# Example 禁止pagespeed 处理/ipython/目录
pagespeed Disallow"*/ipython/*";
四、注意说明
4.1 在32位Linux服务器上编译不成功,不知道是不是缺少说明组件,在此32位机子可能会有未知错误 查看是否32位机器
4.1.1 uname -a 显示x86_64 则64位机器 i386或i686则是32位机器
4.2 参考链接
4.2.1 http://os.51cto.com/art/201402/428780.htm 如何借助PageSpeed,为Nginx网站服务器提速?
4.2.2 http://www.codesec.net/view/146581.html Nginx PageSpeed模块配置和使用
4.2.3 https://developers.google.com/speed/pagespeed/module/build_ngx_pagespeed_from_source ngx_speed官网手册
结束语
本文有任何错误,或有任何疑问,欢迎留言说明。
网友最新评论