继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Apache自动优化前端页面的模块mod_pagespeed安装

html5零基础入门学习
关注TA
已关注
手记 246
粉丝 81
获赞 517

         Apache自动优化前端页面的模块mod_pagespeed安装

   mod_pagespeed是一个适用于apache httpd的模块,由google发布的开源代码,目前只支持apache2.2版本,可以自动完成优化工作,包括优化缓存,减少客户端服务器之间的通讯,降低负载等等。

部署mod_pagespeed不用修改任何程序,安装完成后重启apache,一切前端问题自动优化。CDN服务商Cotendo已在其CDN服务器上部署mod_pagespeed以加速客户网站访问,图片文件大小经自动压缩可减少20%-30%,页面加载时间最多可缩短50%GoDaddy也宣布将在其客户网站服务器上广泛部署mod_pagespeed

mod_pagespeed功能:

1.Optimize Caching优化缓存

 Extend Cache扩展缓存

 Outline CSS

 Outline JavaScript

       2.Minimize Round Trip Times最大限度地减少往返时间

Combine CSS 合并CSS

Inline CSS 内嵌CSS

Inline JavaScript  内嵌JavaScript

3.Minimize Payload Size最小化有效载荷尺寸

Collapse Whitespace  压缩空白

Combine Heads  合并头信息

Elide Attributes  省略属性

Minify Javascript 缩小Javascript

Optimize Images  优化图片

Remove Comments 删除注释

Remove Quotes 删除引用

Rewrite CSS  重写CSS

Move CSS to HEAD 加载CSShead

Add Head 

Add Instrumentation 

从源码安装mod_pagespeed

需要的环境:apache版本2.2以及以上

g++版本4.2以及以上

subversion

make

依赖关系:

安装depot_tools,用来建立多个开源项目与其它开源项目的依赖关系

# mkdir ~/bin

# cd ~/bin

svn co http://src.chromium.org/svn/trunk/tools/depot_tools

depot_tools加入到PATH路径中

exportPATH=$PATH:~/bin/depot_tools

下载mod_pagespeed并解除依赖关系:

# mkdir ~/mod_pagespeed

# cd ~/mod_pagespeed 

#gclient config http://modpagespeed.googlecode.com/svn/tags/0.9.11.5/src 

#gclient sync --force   //下载mod_pagespeed源码文件

编译mod_pagespeed

# cd ~/mod_pagespeed/src 

# make V=1

安装mod_pagespeed

# cd install  consolas

# vim Makefile  //更改有关apache路径

APACHE_ROOT = /usr/local/apache2.2.15

APACHE_MODULES = $(APACHE_ROOT)/modules

APACHE_DOC_ROOT = /www

APACHE_CONTROL_PROGRAM = /usr/local/apache2.2.15/bin/apachectl

STAGING_DIR = /tmp/mod_pagespeed.install

MOD_PAGESPEED_FILE_ROOT = /usr/local/apache2.2.15/mod_pagespeed

APACHE_USER = nobody

APACHE_CONF = $(APACHE_ROOT)/conf/extra

# make staging

rm -rf /tmp/mod_pagespeed.install

mkdir -p /tmp/mod_pagespeed.install

sed -e s@APACHE_DOC_ROOT@/www@g \

 -e s!@@MODPAGESPEED_CACHE_ROOT \

@@!/usr/local/apache2.2.15/mod_pagespeed!g \

-e "s@# ModPagespeedSlurpDirectory ... \

@#ModPagespeedSlurpDirectory ...@g" -e "s@#  

ModPagespeedSlurpReadOnly on@#ModPagespeedSlurpReadOnly on@g" \

-e "s@^#STRESS.*@@"  common/pagespeed.conf.template \

debug.conf.template > /tmp/mod_pagespeed.install/pagespeed.conf

sed -e s@HOSTNAME@132file@g -e s@APACHE_MODULES \

@/usr/local/apache2.2.15/modules@g  proxy.conf.template > \

 /tmp/mod_pagespeed.install/proxy.conf

echo "LoadModule \

 pagespeed_module /usr/local/apache2.2.15/modules/mod_pagespeed.so" \

 > /tmp/mod_pagespeed.install/pagespeed.load

echo "LoadModule deflate_module /usr/local/apache2.2.15/modules/mod_deflate.so" \

 >> /tmp/mod_pagespeed.install/pagespeed.load

cp -rp mod_pagespeed_example /tmp/mod_pagespeed.install

cp ../out/Release/libmod_pagespeed.so /tmp/mod_pagespeed.install/mod_pagespeed.so

# make install   

mkdir -p /usr/local/apache2.2.15/mod_pagespeed/cache

mkdir -p /usr/local/apache2.2.15/mod_pagespeed/files

chown -R nobody /usr/local/apache2.2.15/mod_pagespeed

cat  /tmp/mod_pagespeed.install/pagespeed.load \

 /tmp/mod_pagespeed.install/pagespeed.conf \

 > /usr/local/apache2.2.15/conf/extra/pagespeed.conf

rm -rf /www/mod_pagespeed_example

cp -r /tmp/mod_pagespeed.install/mod_pagespeed_example /www

chown -R nobody /www/mod_pagespeed_example

cp /tmp/mod_pagespeed.install/mod_pagespeed.so /usr/local/apache2.2.15/modules

# vim httpd.conf

Include conf/extra/pagespeed.conf

# make stop start

sudo /usr/local/apache2.2.15/bin/apachectl stop

sudo /usr/local/apache2.2.15/bin/apachectl start

 检查mod_pagespeed模块是否加载成功:

# ./apachectl -t -D DUMP_MODULES | grep pagespeed 

Syntax OK

  pagespeed_module (shared)

 监视mod_pagespeed状态信息:

  http://ip/mod_pagespeed_statistics

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP