分类: 系统运维
2011-08-08 16:40:10
httpd-2.2.19
./configure --prefix=/usr/local/httpd --with-apr=/usr/local/apr --with-included-apr=/usr/local/apr/include --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-rewrite --enable-so --with-mpm=worker -enable-cache --enable -disk-cache --enable-mem-cache --enable-deflate --enable-headers
make; make install
安装完成后竟然在模块里没有找到deflate_module和headers_module 模块,参考别人文档手动安装
4 安装扩展模块(以安装mo_deflate为例,需要时安装)
4.1 在编译安装apache时安装扩展模块
编译安装apache是,执行./configure命令时,在命令尾追加 --enable-deflate参数
4.2 通过编译*.c文件来安装扩展模块
(1) 在解压后的apache文件中查找mod_deflate.c文件,可执如下命令来查找:
Java代码
# find /lusen/httpd-2.2.19 -name mod_deflate.c
结果会输出文件地址,例如/lusen/lib/httpd-2.2.19/modules/filters/mod_deflate.c
(2) 进入apache安装目录中的bin文件夹,执行如下命令:
Java代码
# ./apxs -ica /lusen/lib/httpd-2.2.19/modules/filters/mod_deflate.c
如果执行时出错,则将bin目录下的apr-1-config文件中的LDFLAGS=""修改为LDFLAGS="-lz" ,然后再执行上述命令。
如果执行时成功,则会在module目录中生成mod_deflate.so文件,并在http.conf文件中添加LoadModule deflate_module modules/mod_deflate.so
apxs命令参数说明:
-i 此选项表示需要执行安装操作,以安装一个或多个动态共享对象到服务器的modules目录中。
-a 此选项自动增加一个LoadModule行到httpd.conf文件中,以激活此模块,或者,如果此行已经存在,则启用之。
-A 与 -a 选项类似,但是它增加的LoadModule命令有一个井号前缀(#),即此模块已经准备就绪但尚未启用。
-c 此选项表示需要执行编译操作。它首先会编译C源程序(.c)files为对应的目标代码文件(.o),然后连接这些目标代码和files中其余的目标代码 文件(.o和.a),以生成动态共享对象dsofile
。如果没有指定 -o 选项,则此输出文件名由files中的第一个文件名推测得到,也就是默认为mod_name.so
但安装生成。加载时确报错:
httpd: Syntax error on line 56 of /usr/local/httpd/conf/httpd.conf: module deflate_module is built-in and can't be loaded
httpd: Syntax error on line 57 of /usr/local/httpd/conf/httpd.conf: module headers_module is built-in and can't be loaded
模块为内建模块,不需要再调入?
[root@test bin]# httpd -l|grep deflate
mod_deflate.c
[root@test bin]# httpd -l|grep header
mod_headers.c
原来如此,我说加了代码进出也没有报错。
编辑httpd.conf文件,增加配置
#DeflateCompressionLevel 9
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE js css
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4/.0[678] no-gzip
BrowserMatch /bMSI[E] !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary
#DeflateFilterNote deflate_ratio
#LogFormat “%v %h %l %u %t /”%r/” %>s %b mod_deflate: %{deflate_ratio}n pct.” vhost_with_deflate_info
#CustomLog logs/order.7180.com-access_log vhost_with_deflate_info
参考