Linux下apache2及模块mod_deflate等安装和配置
安装apache
1、wget http://archive.apache.org/dist/httpd/httpd-2.2.13.tar.gz
2、在安装目录
先让大家看看实际效果,请看下图10点中的流量,开启deflate压缩后后,今天的10点,带宽是3MB,没有开启deflate压缩的昨天上午10 点,带宽是4.3MB。很明显,节约了30%的流量开支。如果图片,zip等下载文件较少,纯html页面,php页面较多,可以节约50%以上的带宽。

压缩比率测试结果(某两个页面):
Original Size: 30 KB
Gzipped Size: 8 KB
Data Savings: 73.33% 首页是html页面,节约了73%的带宽,速度提高了3倍多!
Original Size: 37 KB
Gzipped Size: 10 KB
Data Savings: 72.97% 这也是html页面,节约了72%的带宽,速度提高了3倍多!
开启了实时压缩传输,在服务器负载方面,CPU负载提高了0.3左右,可以接受。
如何安装apache的deflate压缩?
下面收集整理的mod_deflate安装和配置经验和过程,适合apache2.x
Apache2 推荐使用 moddeflate 压缩,modgzip适合apache1.x
关于moddeflate的详细内容,可以参考http://httpd.apache.org/docs/2.0/mod/moddeflate.html
查找模块deflate
find /backup/soft/httpd-2.2.4 -name mod_deflate.c
cd /backup/soft/httpd-2.2.4/modules/filters
安装mod_deflate
/usr/local/apache224/bin/apxs -i -c -a mod_deflate.c
apxs命令参数说明:
-i 此选项表示需要执行安装操作,以安装一个或多个动态共享对象到服务器的modules目录中。
-a 此选项自动增加一个LoadModule行到httpd.conf文件中,以激活此模块,或者,如果此行已经存在,则启用之。
-A 与 -a 选项类似,但是它增加的LoadModule命令有一个井号前缀(#),即此模块已经准备就绪但尚未启用。
-c 此选项表示需要执行编译操作。它首先会编译C源程序(.c)files为对应的目标代码文件(.o),然后连接这些目标代码和files中其余的目标代码文件(.o和.a),以生成动态共享对象dsofile 。如果没有指定 -o 选项,则此输出文件名由files中的第一个文件名推测得到,也就是默认为mod_name.so 。如果是新安装apache,直接加上 --enable-headers --enable-deflate 即可
配置mod_deflate
vi /usr/local/apache224/conf/httpd.conf
LoadModule deflatemodule modules/moddeflate.so
此LoadModule需要放在libphp5.so之后
<IfModule mod_deflate.c>
DeflateCompressionLevel 7
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE css js
压缩等级的调整有两种说法,不过懒得研究了,默认等级是6,890k的文件压缩出来的数据和最高的9级只差1k,而且9级需要更多的CPU时间,用默认的6级就可以了。
另外,有个Real-Time Compression Check工具,可以检测某个URL是否是压缩传输的。好像这家公司做IIS下的zip压缩程序,所以弄了这么个在线工具。只要输入你的地址,回车,就可以看到服务器类型、是否是压缩传输以及压缩前和压缩后的大小比较。大多数情况下html代码都能压缩到1/4~1/3,gzip压缩传输还是很不错的。
Linux下apache2及模块mod_deflate等安装和配置的更多相关文章
- Linux下Apache2.2和PHP5的安装配置
Linux下Apache2.2和PHP5的安装配置 环境介绍 我安装使用的Linux版本为CentOS6.5最精简版,Apache为2.2.29,PHP版本为5.4.28. 系统安装 首先安装Cent ...
- Linux下查看mysql、apache是否安装,安装,卸载等操作
Linux下查看mysql.apache是否安装,并卸载. 指令 ps -ef|grep mysql 得出结果 root ? :: /bin/sh /usr/ ...
- linux下MySQL 5.6源码安装
linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...
- VMware Linux下拖拽补丁vmtools的安装和卸载
Linux下拖拽补丁vmtools的安装和卸载 by:授客 QQ:1033553122 Vmware 8.0.4为例子 步骤1.VM->Install Vmware Tools... 步骤2.查 ...
- Linux下 rz 和 sz 命令的安装与使用
目录 Linux下 rz 和 sz 命令的安装与使用 rz/sz命令的安装 sz命令-发送文件到本地(下载): rz命令-本地上传文件到服务器(上传): 声明 Linux下 rz 和 sz 命令的安装 ...
- CentOS Linux下MySQL 5.1.x的安装、优化和安全配置
下载页面:http://dev.mysql.com/downloads/mysql/5.1.html#downloads 到页面底部,找到Source downloads,这个是源码版本,下载第1个T ...
- windows和linux下 Python2,Python3 的环境及安装
目录 windows和linux下 Python2,Python3 的环境及安装 window下安装 一. 手动安装 二. pip安装 linux下 安装 更新Python 笔者有话 windows和 ...
- Linux下beego及beego相关插件安装
Linux下beego及beego相关插件安装 1.下载及配置go环境看见链接: http://golang.org/dl/ 网盘:链接: https://pan.baidu.com/s/1MveUM ...
- 基于linux下的NIST数字测试包安装过程
基于linux下的NIST数字测试包安装过程 1. 首先解决windows文件不能粘贴到Ubuntu的问题 选择利用VMware Tools进行解决 打开虚拟机VMware Workstation,启 ...
随机推荐
- HackPwn:TCL智能洗衣机破解细节分析
上周结束的Hackpwn上,黑客们脑洞大开,破解了比亚迪汽车.小米手环.乐小宝.长虹电视.TCL洗衣机和九阳豆浆机等一系列最新的智能硬件,据黑客介绍,TCL是一家把家门“砌死”的企业,由于得到了将要被 ...
- mms:源码浅析
程序启动 程序的入口:ConversationList.java,对应主页中短信的快捷方式.由此进入短信列表模块. 短信列表模块 该模块的展示是由ConversationList.java类实现的,该 ...
- vue-resource 上传图片
const formData = new FormData()formData.append('file',img,params.name);formData.append('id',params.i ...
- SWIFT解析天气JSON格式
访问以下链接可以得到京城当天的天气:http://www.weather.com.cn/adat/sk/101010100.html 返回的JSON格式如下: {"weatherinfo&q ...
- Object-C 基础笔记4---ARC内存管理
内存管理的原则 1,对你自己拥有的对象负责.你只能释放自己拥有的对象.(谁污染谁治理). 2,凡是通过retain,alloc,copy等于段获得了所有权对象,都必须在你不再使用的时候释放.调用rel ...
- ThreadLocal讲解
一.前言 ThreadLocal这个对象就是为多线程而生的,没有了多线程ThreadLocal就没有存在的必要了.可以将任何你想在每个线程独享的对象放置其中,并在任何时候取出来. 二.基本用法 Thr ...
- 在WisOne平台上学习TypeScript
TypeScript是微软公司推出的开源的类型化脚本语言,目的是用于为弱类型的javaScript提供强类型的识别和感知功能,同时它提供了类.接口.继承等相关在javaScript中不容易实现的功能, ...
- 【JUnit】@Test 报错,"Test cannot be resolved to a type"
想用单元测试 JUnit 单元测试下写好的方法,发现写 @Test 标签报错了,"Test cannot be resolved to a type" 原来是项目没有导入 JUni ...
- ElasticSearch(五):简单的ElasticSearch搜索功能
这里主要是一些简单的ElasticSearch的搜索功能,复杂的搜索,比如过滤,聚合等以后单独在写 1. 搜索全部 GET book/_search 直接搜索全部,下面是对搜索结果的详细介绍:默认情况 ...
- 2018-2019-2 20165212《网络对抗技术》Exp1 PC平台逆向破解
2018-2019-2 20165212<网络对抗技术>Exp1 缓冲区溢出实验 实验点1:逆向及Bof基础实践 实践任务 用一个pwn1文件. 该程序正常执行流程是:main调用foo ...