转-linux下apache安装gzip压缩
转自:http://hi.baidu.com/qianwei1017/blog/item/4247184e33143bd5d1c86a1c.html
http://www.ctusky.com/18/0748/
1. 安装 mod_hearders
# cd /home/changyou/httpd.2.2.14/modules/metadata/
# /usr/local/web/apache/bin/apxs -i -c -a mod_deflate.c
apxs号令参数申明:
-i 此选项默示须要履行安装操纵,以安装一个或多个动态共享对象到办事器的modules目次中
-a 主动增长LoadModule行到httpd.conf文件中,以激活此模块,若是此行已经存在,则启用
-A 与 -a 选项类似,然则它增长的LoadModule号令有一个井号前缀(#),即此模块尚未启用
-c 此选项默示须要履行编译操纵。它起首会编译(.c)源法度为对应的目标代码文件(.o),然后连接这些目标代码和files中其余的目标代码文件(.o和.a),以天活泼态共享对象.so文件
-o 若是没有指定,则此输出文件名由files中的第一个文件名获得,也就是默认为mod_name.so
成果报错:
chmod 755 /usr/local/web/apache/modules/mod_deflate.so
chmod: cannot access `mod_deflate.so’: No such file or directory
意思是没有.so文件,所以须要gcc一下
# gcc -shared -o mod_headers.so mod_headers.o
# cp mod_headers.so /usr/local/web/apache/modules/
# /usr/local/web/apache/bin/apxs -i -a -c mod_headers.c
2. 安装 mod_deflate
# /usr/local/web/apache/bin/apxs -i -c -a mod_deflate.c
同样也报上方“No such file or directory”错误
# gcc -shared -o mod_deflate.so mod_deflate.o
# cp mod_deflate.so /usr/local/web/apache/modules/
# /usr/local/web/apache/bin/apxs -i -a -c mod_deflate.c
3. 设备 mod_deflate
在 httpd.conf 中添加so,而我这里因为在 apxs 时用了 -a 参数,所以so文件已被主动接洽关系
LoadModule deflate_module modules/mod_deflate.soLoadModule headers_module modules/mod_headers.so
其实安装deflate时mod_headers并不是必须的,哪为什么我们安装呢?主如果应用了header模块来确保不会发送错误的内容。最后在你的设备文件里参加以下代码,好开启gzip:
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-phpAddOutputFilter DEFLATE css js
或者:
<IfModule mod_deflate.c> DeflateCompressionLevel 7 AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php AddOutputFilter DEFLATE css js</IfModule>