Coding, Web, Hydrology and more.

安装Ngx_pagespeed给你的网站加速

前言

ngx_pagespeed 是一个 Nginx 的扩展模块,可以加速你的网站,减少页面加载时间,它会自动将一些提升web性能的实践应用到网页和相关的资源(CSS、JS和图片)上,无需你修改内容和流程,对于前端开发人员来说,能省下许多功夫。需要注意的是,Ngx_pagespeed这个模块对Nginx本身来说并不会带来性能上的优化,反而会加重服务器的负担,所以不建议小内存少内核的VPS使用。但从减少客户请求数的角度去看,牺牲部分服务器性能还是值得的。其实WordPress上也有一款类似功能的插件W3 Total Cache:https://wordpress.org/plugins/w3-total-cache/,功能不比ngx_pagespeed差。

功能包括:

  • 图片优化: stripping meta-data, dynamic resizing, recompression
  • CSS & JavaScript 压缩、合并等
  • 小资源的内联
  • 推迟图片和 JS 的加载
  • HTML 重写
  • 延长缓存扩展

安装

对于使用军哥lnmp1.3的一键安装包的用户

执行以下指令

安装好之后执行以下指令编辑upgrade_nginx.sh

找到[kbd]./configure –user=www –group=www –prefix=/usr/local/nginx[/kbd],在这行代码的末尾添加

[kbd]–add-module=$HOME/ngx_pagespeed-1.11.33.4-beta[/kbd]

接着更新一下nginx

不用更新nginx的版本,运行这个命令的结果只是把pagespeed这个模块加入到nginx中去。

对于手动搭建平台的用户

一、自动安装PageSpeed

脚本会自动安装Dependencies以及自动编译最新版本的的Nginx和ngx_pagespeed,当然也可以指定要编译的Nginx和pagespeed版本。

如果不想要编译最新版本的Nginx

这样只会准备好ngx_pagespeed的module,之后还需要自己来编译Nginx

更多指令参照

二、手动安装PageSpeed

1)Denpendencies安装

RedHat, CentOS下执行

Ubuntu/Debian下执行

2)下载PageSpeed

3)下载Nginx并且编译

PageSpeed设置

当然安装好以后pagespeed需要手工设置以后才能正常工作

修改[kbd]/usr/local/nginx/conf/vhost/*.conf[/kbd]

在server代码块中启动pagespeed

更多设置参考:https://modpagespeed.com/doc/configuration

分享一个网上的配置:

[kbd]/usr/local/nginx/conf/pagespeed.conf[/kbd]

补充:如果遇到Rewrite冲突(404),那么在Nginx的conf文件里加入这一行

Pagespeed中的缓存管理

pagespeed默认是按照文件的ttl来判断什么时候更新缓存的,很多时候我们是没有给文件设置ttl,这样话就会造成

pagespeed默认将文件缓存时间设置成一年!!这样是非常不好的,尤其是在测试主题的时候,

有两种方法解决,一种是一步步把文件ttl设置好,这样非常麻烦,第二种就是使用pagespeed的管理页面

在ngx_pagespeed 1.8.x版本以后谷歌引入了pagespeed的管理页面,这样给缓存管理带来了很大的方便。

首先需要在[kbd]/usr/local/nginx/conf/vhost/*.conf[/kbd]中pagespeed on下一行加入

保存以后再用service nginx restart 重启nginx应用配置。
这样你就可以用http://你的域名/你自定义的管理路径 访问pagespeed的管理页面了

About the author

EDLinus

[stay(d) for d in ('determined','diligent','devoted')]

 
By EDLinus
Coding, Web, Hydrology and more.

Meta