为OpenResty增加ngx_pagespeed模块进行优化

1、下载ngx_pagespeed模块

wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.8.31.4-beta.zip
unzip v1.8.31.4-beta.zip
cd ngx_pagespeed-1.8.31.4-beta/
wget https://dl.google.com/dl/page-speed/psol/1.8.31.4.tar.gz
tar -xzvf 1.8.31.4.tar.gz

2、重新编译OpenResty

./configure --prefix=/usr/local/openresty/ --with-http_stub_status_module --add-module=/usr/local/software/ngx_pagespeed-1.8.31.4-beta/ --with-luajit
make
mv /usr/local/openresty/nginx/sbin/nginx /usr/local/openresty/nginx/sbin/nginx.old
cp /usr/local/software/ngx_openresty-1.7.0.1/build/nginx-1.7.0/objs/nginx /usr/local/openresty/nginx/sbin/
service nginx restart
/usr/local/openresty/nginx/sbin/nginx -V

3、配置pagespeed

对新手用户而言:使用CoreFilters
CoreFilters含有一系列PageSpeed过滤器,谷歌认为这些过滤器对大多数网站来说是安全的。如果启用CoreFilters,你就自动启用了一系列"安全"规则。所以,推荐新手用户采用这种方法。如果你愿意,也可以禁用CoreFilters中的某个或某些过滤器,或者选择性地启用额外的过滤器。下面这个例子表明了使用CoreFilters的ngx_pagespeed配置。

server {
# 侦听的端口
listen 80;
# 服务器名称
server_name xmodulo.com www.xmodulo.com;
# 记下根目录
root /usr/local/nginx/html;
# 访问日志
access_log /var/log/nginx/access.log main;
# 启用ngx_pagespeed
pagespeed on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# 启用CoreFilters
pagespeed RewriteLevel CoreFilters;
# 禁用CoreFilters中的某些过滤器
pagespeed DisableFilters rewrite_images;
# 选择性地启用额外的过滤器
pagespeed EnableFilters collapse_whitespace;
pagespeed EnableFilters lazyload_images;
pagespeed EnableFilters insert_dns_prefetch;
} 

对高级用户而言:使用PassThrough
如果是高级用户,你可以使用PageThrough级别,你可以手动启用个别过滤器。

server {
# 侦听的端口
listen 80;
# 服务器名称
server_name xmodulo.com www.xmodulo.com;
# 记下根目录
root /usr/local/nginx/html;
# 访问日志
access_log /var/log/nginx/access.log main;
# 启用ngx_pagespeed
pagespeed on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# 禁用CoreFilters
pagespeed RewriteLevel PassThrough;
# 启用压缩空白过滤器
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 CssFlattenMaxBytes 5120;
# 延时加载客户端看不见的图片
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;
} 

4、修改缓存目录的主属(我的OpenResty是用nobody用户)

chown nobody:nobody /var/ngx_pagespeed_cache

 

时间: 2024-09-29 02:09:50

为OpenResty增加ngx_pagespeed模块进行优化的相关文章

为php增加mysql模块时报错

configure: error: mysql configure failed. Please check config.log for more information. 为php增加mysql模块时报错 configure: error: mysql configure failed. Please check config.log for more information. 解决方法: [vagrant@rs-1 mysql]$ ./configure --with-php-config

Nginx 将增加动态模块,用户可修改服务器

Nginx 将增加一个动态模块(dynamic modules)功能和一个基于 SaaS 的监控工具 Amplify,使它的 Web 服务器更加灵活和更好管理.这个动态模块和 Amplify 技术都是在本周的 nginx.conf 大会公布的. 增加动态模块后,会更加方便模块开发者分享 Nginx 的 Web 服务器的扩展.Nginx 的产品总监Owen Garrett 说,创建模块到 Nginx 之前很有挑战性,因为模块被构造和发出后,Nginx 的服务器就不允许再修改了,而动态模块允许添加额

Linux下Apache安装/增加mod_rewrite模块的方法_Linux

如果你的服务器apache还没有安装,那很简单,在编译apache时将mod_rewrite模块编译进去就可以,相关文档可以在http://man.chinaunix.net/newsoft -- ew/mod/mod_rewrite. html中找到.如果你的apache已经安装好了,现在只想编译出mod_rewrite.so模块,在apache中进行加载,下面我们就介绍这个方法. 以Fedora操作系统进行举例: 1)首次安装apache,在编译时增加--enable-rewrite选项.

为duilib的MenuDemo增加消息响应,优化代码和显示效果

转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/38253297 第一部分         我在前一段时间研究了怎么制作duilib的菜单,花了几天时间以MenuDemo为基础做出个duilib的菜单以备自用,近些天在群里经常会碰到群友问如何给MenuDemo增加消息响应,为了避免重复的回答我特意写这篇日志,希望可以帮到需要之人,同时也介绍了如何美化菜单的效果.动态修改自身的状态以及通过增加属性来优化菜单的xml文件编写

Ubuntu14.04 增加swap大小,优化swap的使用参数

wubi安装ubuntu14.04后,终端输入free -m可以查到如下信息:              total       used       free     shared    buffers     cached  Mem:          1944       1801        143          0        557        706  -/+ buffers/cache:        536       1407  Swap:          255

不重新编译PHP为php增加openssl模块的方法

复制代码 代码如下:yum -y install openssl /usr/local/bin/是php的安装目录 切换到php安装目录的etx/openssl目录 cd /root/soft/php-5.2.8/ext/openssl 复制代码 代码如下: /usr/local/bin/phpize Cannot find config.m4. Make sure that you run '/usr/local/bin/phpize' in the top level source dire

phpize增加php模块

一.phpize是干嘛的? phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块   什么时候我们要用phpize呢? 我们在安装php时: './configure' '--prefix=/usr/local/php' '--with-MySQL=/usr/local/mysql' '--with-zlib-dir' '--with-freetype-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--

不重新编译PHP为php增加openssl模块的方法_php技巧

复制代码 代码如下: yum -y install openssl /usr/local/bin/是php的安装目录 切换到php安装目录的etx/openssl目录 cd /root/soft/php-5.2.8/ext/openssl 复制代码 代码如下: /usr/local/bin/phpize Cannot find config.m4. Make sure that you run '/usr/local/bin/phpize' in the top level source dir

模块SEO优化中{分类名称}分隔符去掉及只调用下级分类方法

  if($catid) { if($CAT['parentid']) { $seo_catname = ''; $tmp = strip_tags(cat_pos($CAT, 'DESTOON')); $tmp = explode('DESTOON', $tmp); $tmp = array_reverse($tmp); /* foreach($tmp as $k=>$v) { $seo_catname .= $v.$seo_delimiter; }*/ $seo_catname .= $tm