月度归档:2015年08月

Nginx 安装pagespeed为网页加速

PageSpeed是一个由谷歌开发的网站服务器模块https://developers.google.com/speed/pagespeed/module PageSpeed旨在缩短网页加载的时间,减少网站服务器的带宽使用量。Google官方介绍通常情况下PageSpeed大约能帮助节省25%-37%的带宽,当然这个得看是什么内容,有些内容是不能压缩的。

PageSpeed的功能特性:
PageSpeed模块可以使用数量众多的重写”过滤器”,每个过滤器都可以选择性地开启/关闭,从而自动进行各种优化(比如,减小文档大小、减少HTTP请求数据、减少HTTP往返次数以及缩短DNS解析时间)。
下面是ngx_pagespeed支持的其中一些过滤器。想了解支持的全部过滤器,请参阅官方文档。
Collapse Whitespace(压缩空白):通过把HTML网页中的多处连续空白换成一处空白,减少带宽使用量。
Canonicalize JavaScript Libraries(规范化转换JavaScript库):通过自动把流行的JavaScript库换成免费托管的JavaScript库(比如由谷歌托管),减少带宽使用量。
Combine CSS(合并CSS):通过把多个CSS文件合并成一个CSS文件,减少HTTP请求数量。
Combine JavaScript(合并JavaScript):通过把多个JavaScript文件合并成一个JavaScript文件,减少HTTP请求数量。
Elide Attributes(省略属性):通过删除由默认属性指定的标签,缩小文档大小。
Extend Cache(扩展缓存):通过优化网页资源的可缓存性,减少带宽使用量。
Flatten CSS Imports(精简CSS导入):通过删除CSS文件中的@import,减少HTTP请求往返次数。
Lazyload Images(延时加载图片):延时加载在客户端浏览器上看不见的图片。
Minify JavaScript(缩小JavaScript):通过缩小JavaScript,减少带宽使用量。
Optimize Images(优化图片):通过引入更多的内嵌图片、压缩图片,或者将GIF图片转换成PNG图片,优化图片分发。
Pre-Resolve DNS(预解析DNS):通过预解析DNS,缩短DNS解析时间。
Prioritize Critical CSS(优化加载关键CSS规则):重写CSS文件,以便首先加载渲染页面的CSS规则。
ngx_pagespeed模块并未内置在随主要Linux发行版(比如Fedora 19)发布的Nginx程序包中。因而,想使用Nginx中的PageSpeed,你需要利用源代码来构建Nginx。

cd /home/src
NPS_VERSION=1.9.32.6
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip
unzip release-${NPS_VERSION}-beta.zip
cd ngx_pagespeed-release-${NPS_VERSION}-beta/
wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
tar -xzvf ${NPS_VERSION}.tar.gz # extracts to psol/

cd /home/src
wget http://nginx.org/download/nginx-1.9.3.tar.gz
tar -xvzf nginx-1.9.3.tar.gz
cd nginx-1.9.3
./configure –add-module=../ngx_pagespeed-release-${NPS_VERSION}-beta
make
sudo make install

pagespeed可以全局设置,写到nginx.conf的http段里面,也可以写到server段甚至是location里面,非常灵活

通常作为论坛的配置:
pagespeed On;
pagespeed FileCachePath “/dev/shm/”;
pagespeed Disallow “*.html”;##做了rewite的论坛必须启用,否则会段时间内产生大量缓存文件
pagespeed Disallow “*.php*”;
pagespeed RewriteLevel OptimizeForBandwidth;
pagespeed EnableFilters combine_css,combine_javascript,canonicalize_javascript_libraries,collapse_whitespace,convert_meta_tags,dedup_inlined_images,flatten_css_imports,inline_import_to_link,inline_css,inline_javascript,rewrite_javascript,remove_comments,rewrite_css,rewrite_images,convert_gif_to_png,recompress_png,convert_jpeg_to_progressive,strip_image_color_profile,strip_image_meta_data,insert_image_dimensions,extend_cache,move_css_to_head,sprite_images;

更多具体配置请查看官方文档:
https://developers.google.com/speed/pagespeed/module/configuration

关于宝马车撞人的补充

经典的就是要多发一次

在我们这个百万人口大城市(呸!)的一个麦当劳门口(为了避免报复,我就不说具体哪个城市了)。
一天,一个小男孩跟她奶奶(忒时髦的说)吃完出来,小男孩手里拿个吃套餐给的玩具,一耍的给甩了出去!
没那么巧的,门口停着辆很酷的宝马(好像是750i,如果我没记错的话)结果就那么巧的给砸上面了,结果就那么巧的
给划了那么一小小小小……道痕迹!(根本就没什么啊,塑料玩具不大可能划伤车子啊,反正我没看出来)
然后那个宝马的主子就喘着大气下来了,一看爱车给划了道痕,什么也没说啪啪就给了那小孩两嘴巴!哎哟,
那个缺德劲,要是我NB我就扇他去!
然后那小孩他奶奶就打了个电话,并且把那个宝马的主子给拽住,反正他没得走了!(这个是在屋里面吃东西的时候看到的)
大概15分钟(我吃完出来了),一看门口当道停着好像4、5辆车,都是什么奔驰宝马级别的,还站着15-20个人,那叫一个NB !!!
那个小孩他爸(后来判断出来的)很客气的说:我们小孩划了你的车,是我们不对,你这车多少钱买的。
那个人回答:200W(KAO!真吭人!)
他爸说:现在值多少?
那个人:160W(CAO,扯淡!)
孩他爸:那行,到车的后背箱数160w
那人估计当时也SB了,就乖乖的跟着他去数了160W。真NB
然后,那小孩他爸说:把那车给我砸了!
KAO!宝马啊!结果那跟着的10多个人就回车里取了斧子,把那宝马给砸了!
还是那句!宝马啊!!!
那个宝马的主子当时彻底SB了,P都不敢放!我也是吓的不知道走开了!
半天之后车彻底报废了!
然后那小孩他爸说:车的事,咱们解决了!接下来你打我小孩的事,咱们该说说了!我小孩可比车值钱多了!
KAO!我当时就傻了!估计那宝马车主子魂都没了!
就看他被“请”上了个车,走了,估计丫要是没点家底,死定了,有家底也败家了!
多好的宝马啊,就这么摊那了!废铁一堆!
他们走后110就来了,真“TMD”准,刚走就来,我怀疑……
不多说了,大家就一起震撼一下吧!
我是震撼死了!
有钱,真NB!
绝对我自己经历的!不含夸张水分!

又一天,一个小男孩跟她奶奶(忒时髦的说)准备登机,楼梯登到一半!突然空姐说不让登机了!!说预留座位已满了!!
然后那个机长就喘着大气下来了,说机场会为她安排就近的其它航班,说什么也不让上!哎哟,那个缺德劲,要是我NB我就扇他去!
然后那小孩他奶奶就打了个电话,并且把那个机长给拽住,说什么也让他上飞机,反正他没得走了!(这个是在机场餐厅吃东西的时候看 到的)
大概15分钟(我从机场餐厅吃完出来了),一看跑道上停着好像4、5架直升机挡道,都是什么山猫级别的,还站着15-20个黑衣 人,那叫一个NB!!!
那个小孩他爸(后来判断出来的)很客气的说:我们老太太阻挡你们的起飞,是我们不对,你这747当年多少钱进口的。
那个机长回答:少说两亿吧?(KAO!真吭人!)
孩他爸说:加上这个航班的所有乘客的机票钱多少?
那个人:少说也有两亿五(CAO,扯淡!)
他爸:那行,两亿五现金不方便,你上我们直升机去数金砖!
那人估计当时也SB了,就乖乖的跟着他数了250块金砖。真NB
然后,那小孩他爸说:把乘客给我叫下来!
于是空姐们乖乖把乘客都带下来了。
小孩他爸又说:把飞机给我炸了!!
KAO!747啊!结果那跟着的10多个人就回直升机里里取了de-tona-tor,把那747给炸了!
还是那句!747啊!!!!
那个机场的所有人当时彻底SB了,P都不敢放!我也是吓的不知道走开了!
半天之后火光冲天,整个机场都废了!
然后那小孩他爸说:飞机的事,咱们解决了!接下来你不让我家里人登机的事,咱们该说说了!我家人的时间可比飞机值钱多了!一分钟 1亿,你看着办吧!
KAO!我当时就傻了!估计那机长魂都没了!
就看他被“请”上了个直升机,走了,估计丫要是没点关系,死定了,有中央领导罩着也败家了!
多好的747啊,就这么摊那了!废钢一堆!
他们走后某地领导就来了,真TMD准,刚走就来,我怀疑……
不多说了,大家就一起震撼一下吧!
我是震撼死了!
有钱,真NB!
绝对我自己经历的!不含夸张水分!

又又一天,一个小男孩跟她奶奶(忒时髦的说)吃完出来,小男孩一蹦一跳的往外跑,一不小心就从台阶上跌出去了!没那么巧的,门口 站着一穿吊带背心的大美女(胸围在36D左右,如果我没猜错的话)结果就那么巧的小孩摔到她身上了,结果就那么巧的顺手一拉,把 整个吊带背心拉下来了。当时就有无数路人鼻血 ing….
然后那个美女的男朋友就喘着大气跑来了,一看MIMI露点了,什么也没说啪啪就给了那小孩两嘴巴!哎哟,那个缺德劲,要是我NB 我就扇他去!
然后那小孩他奶奶就打了个电话,并且把那个mm的男朋友给拽住,反正他没得走了!(这个是屋里面吃东西的时候看到的)
大概15分钟(我吃完出来了),一看门口站着一排美女,都是什么36D 级别的,还站着15-20个人,那叫一个NB!!!
那个小孩他爸(后来判断出来的)很客气的说:我们小孩不小心扒了你女朋友的衣服,是我们不对,你这妞胸围多大的。
那个人回答:36E(KAO!真吭人!)
他爸说:看起来没那么大啊?
那个人:36D,这两天缩水(CAO,扯淡!)
他爸:那行,给你个36D 的
那人估计当时也SB了,就乖乖的跟着他在那一排美女中挑了个36D 的。真NB
然后,那小孩他爸说:把那妞给我SM了!
KAO!美女啊!结果那跟着的10多个人就回车里取了皮鞭和蜡烛,把那美女给SM了!
还是那句!美女啊!!!!
那个美女的男朋友当时彻底SB了,P都不敢放!我也是吓的不知道走开了!
半天之后那个美女彻底歇了!
然后那小孩他爸说:妞的事,咱们解决了!接下来你打我小孩的事,咱们该说说了!我小孩可比妞金贵多了!一个巴掌弹JJ500下, 你看着办吧!
KAO!我当时就傻了!估计那美女的男朋友魂都没了!
就看他被“请”上了个车,走了,估计丫要是JJ没练过,死定了,练过也白练了!
多好的美女啊,就这么摊那了!烂肉一堆!
他们走后110就来了,真***准,刚走就来,我怀疑……
不多说了,大家就一起震撼一下吧!
我是震撼死了!
妞多,真NB!
绝对我自己经历的!不含夸张水分

结局篇
地点在我们这个百万人口大城市(呸!)的一个麦当劳门口(为了避免报复,我就不说具体哪个城市了)。
一个小P孩跟她奶奶(忒时髦的说)吃完出来,小男孩好象“小JJ”急了,随地小便!没那么巧的,门口停着辆很破的凤凰(看上去前 轮胎都磨的不象样了,链条都是黑的,如果我没记错的话)结果就那么巧的给“小JJ”尿上面了,结果就那么巧的给“小JJ”尿了那 么一小小小小……滴痕迹!(几乎没什么啊,反正我没看出来)
然后那个凤凰的主子就喘着大气下来了,一看破车给“小JJ”尿了道痕,什么也没说啊,咣咣就给了那小孩两脚!哎哟,都踢在下面, 那个缺德劲,要是我NB我就踹他去!
然后那小孩他奶奶就打了个电话,并且把那个破凤凰的家伙给拽住,反正他没得走了!(这个是屋里面吃东西的时候看到的)
大概15分钟(我吃完出来了),一看门口当道停着好像40、50辆车,都是什么奔驰宝马级别的,还站着150-200个人,整条 马路都堵塞了,那叫一个NB!!!
那个小孩他爸(后来判断出来的)很客气的说:我们小孩划了你的车,是我们不对,你这车多少钱买的。
那个人回答:200块钱(KAO!真吭人!)
他爸说:现在值多少?
那个人:160块钱(CAO,扯淡!)
他爸:那行,到车的后背箱数160块钱
那人估计当时也SB了,就乖乖的跟着他数了160块钱。真NB
然后,那小孩他爸说:把那车给我砸了!
KAO!凤凰啊!
结果那跟着的100多个人就回车里取了斧头榔头曰本刀,把那凤凰给砸了!
还是那句!凤凰啊!!!!
那个骑凤凰的家伙当时彻底SB了,P都不敢放!我也是吓的不知道走开了!
半天之后车彻底报废!
然后那小孩他爸说:车的事,咱们解决了!接下来你打我小孩的事,咱们该说说了!我小孩可比车值钱多了!一个巴掌500W,你看着 办吧!
KAO!我当时就傻了!估计那凤凰车主子魂都没了!
就这时候,他突然哭了出来,“TMD,我骑了10年的凤凰呀!”
然后那骑凤凰的就打了个电话,并且把那个开奔驰的款爷给拽住,反正他没得走了!
大概15分钟,门口当道一下停着好像400、500辆坦克,都是什么M1、M2级别的,还站着1500-2000个人,都拿着A K,半个城市都堵塞了,那叫一个NB!!!
那个骑凤凰的小妾(是个很可爱的佳丽,后来才知道是他的小妾)很客气的说:我家主人踹了你的小孩,是我们不对,你这小孩值多少钱 ?
开奔驰的款爷回答:妈的,我家小孩不卖的(KAO!真吭人!)
那小妾说:出个价吧
开奔驰的款爷:妈的,200亿你出的起吗?出的起我就给你废!(CAO,扯淡!)
那小妾说:那行,到车的后背箱数200亿
那人估计当时也SB了,就乖乖的跟着她数了200亿。真NB
然后,那小妾说:把那小P孩给我废了!
KAO!小P孩啊!
结果那跟着的1000多个人就回车里取了M4 C4 AK B51 喷火器 反坦克导弹,把那小P孩给废了!
还是那句!小P孩啊!!!
那个开奔驰的家伙当时彻底SB了,P都不敢放!我也是吓的不知道走开了!
半天之后小P孩彻底蒸发了!
然后那骑凤凰的人说:小孩的事,咱们解决了!接下来你砸我凤凰的事,咱们该说说了!我对凤凰自行车的感情可比小P孩值钱多了!我 骑了十年了,1分钟1W,你看着办吧!
KAO!我当时就傻了!估计那奔驰主人魂都没了!
他们走后110就来了,真TMD准,刚走就来,我怀疑……

扩展篇
地点在我们这个百万id的社区(呸!)的一个论坛板块(为了避免报复,我就不说具体哪个版了)。
一个新马甲跟老马甲(忒时髦的说)灌完出来,新马甲手里拿个3,一耍的给甩了出去!没那么巧的,门口顶上来很酷的帖子(好像是红脸,如果我没记错的话)结果就那么巧的给顶上面了,结果就那么巧的给赚了3分!
(几乎没什么啊,反正我没看出来)
然后那个帖子的主子就喘着大气下来了,一看爱贴给水了,什么也没说帕帕就给了那马甲两板砖!哎哟,那个缺德劲,要是我有钱我就砸他去!
然后那马甲他老马甲就发了个消息,并且把那个楼主给拽住,反正他没走了!
(这个是在堵场里面的灌水时候看到的)
大概15分钟(我灌完出来了),一看门口停着好像4、5辆车当道,都是什么斑竹管理员级别的,还站着15-20个人,那叫一个NB!!!
那个马甲他主人(后来判断出来的)很客气的说:我们马甲水了你的贴,是我们不对,你这车多少钱买的。
那个人回答:628(K!真吭人!)
马甲他主人说:现在交多少?
那个人:588(*,扯淡!)
马甲他主人:那行,到商店的数588
那人估计当时也傻B了,就乖88的跟着他数了588。真tmd2
然后,那马甲他主人说:把那贴给我封了!
K!红脸啊!结果那跟着的10多个人就回主页里取了权限,把那红脸给删了!
还是那句!红脸啊!!!!
那个帖子的主子当时彻底傻B了,P都不敢放!我也是吓的不知道走开了!
半天之后贴彻底报废!
然后那马甲他主人说:帖子的事,咱们解决了!接下来你砸我马甲的事,咱们该说说了!我马甲可比帖子值钱多了!一个砖头5880,你看着办吧!
k!我当时就傻了!估计那帖子主子魂都没了!
就看他被“请”上了个车,走了,估计丫要是没点家底,死定了,
有家底也败家了!
多好的帖子啊,就这么没了!底下广场!
他们走后管理员就来了,真TMD准,刚走就来,我怀疑……

地点在大曰本帝国(呸!)的一个精神病院门口(为了避免报复,我就不说具体哪个精神病院了)。
一个傻子跟他女病友(忒冒傻气的说)抽完出来,傻子手里拿个裤衩皮筋做的弹弓,一弹,把一个臭鸡蛋给弹出去!没那么巧的,门口挂着件很吊的曰本军旗(好像是膏药旗,如果我没记错的话)结果就那么巧的给砸上面了,结果就那么巧的给湿了那么一小小小小……道痕迹!
(几乎没什么啊,反正我没看出来)
然后那个军旗的主子赵W就喘着大气下来了,一看爱旗给湿了道痕,什么也没说就拿鞭子啪啪给
了那傻子两鞭子!哎哟,那个缺德劲,要是我NB我就抽他去!
然后那傻子他女病友就放了个信号屁,并且把那个军旗的主子给拽住,反正赵W没走了!
(这个是我在屋里面抽烟的时候看到的)
大概2分钟(我抽着烟出来了),一看门口站着20几个精神病人,穿着一样的病号服,喊着统一的口号,那叫一个NB!!!
那个傻子他大哥(后来判断出来的)很客气的说:我们小弟湿了你的军旗,是我们不对,
你这军旗多少钱买的。
赵W回答:不是买的,拍照人送的(K!真吭人!)
他大哥说:现在需要赔多少?
赵W:我不知道,这旗子是干什么的(*,扯淡!)
他大哥:告非,你,你,你TMD新来的吧,丢中国人的脸,给你一本历史书学习吧
赵W估计当时也傻B了,就乖乖的翻历史书学习。真tmd2
然后,那傻子他大哥说:把那军旗给我撕了!
K!膏药旗啊!结果那跟着的20多个患者就你一条,我一条,把那军旗给撕了!
还是那句!膏药旗啊!!!!
那个军旗的主子赵W当时彻底傻B了,P都不敢放!我也是抽的不知道走开了!
2分钟之后军旗彻底被撕碎!
然后那傻子他大哥说:军旗的事,咱们解决了!接下来你抽我小弟的事,咱们该说说了!
我小弟可比军旗值钱多了!一鞭子刷我们病院厕所一年,你看着办吧!
k!我当时就傻了!估计那军旗主子魂都没了!
就看赵W被“请”上了精神病院,走了,估计丫要是没两把刷子,死定了,
有刷子也败家了!
多好的膏药旗啊,就这么碎那了!废布条一堆!
他们走后章子Y就来了,真TMD准,刚走就来,我怀疑……
不多说了,大家就一起震撼一下吧!
我是震撼死了!
能抽,真牛B!

Linux查找文件内容的常用命令方法。

从文件内容查找匹配指定字符串的行:
$ grep “被查找的字符串” 文件名
例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件
grep “thermcontact” */*.in

从文件内容查找与正则表达式匹配的行:
$ grep –e “正则表达式” 文件名

查找时不区分大小写:
$ grep –i “被查找的字符串” 文件名

查找匹配的行数:
$ grep -c “被查找的字符串” 文件名

从文件内容查找不匹配指定字符串的行:
$ grep –v “被查找的字符串” 文件名

从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行
find / -type f -name “*.log” | xargs grep “ERROR”
例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行
find . -name “*.in” | xargs grep “thermcontact”
查找系统里面所有php文件,内容包含”thermcontact”的行
locate *.php | xargs grep “thermcontact”