apache2常用编译参数解释

./configure /
--prefix=/opt/apache2 /
--enable-so/
--enable-expires /
--enable-proxy /
--enable-deflate /
--enable-rewrite /
--enable-headers /
&& make && make install

1 默认安装,仅指定prefix (指定安装路径)
然后查看一下已经加载的模块
/opt/apache2/bin/apachectl -t

2 其实安装一般都是对模块的选择会有所需求,上面的命令可以知道已经安装了默认的模块,还需要哪些模块呢?摘抄一下apache手册的说明:

引用
模块选项
有两种使用模块的方法:一是静态连接进核心,二是作为DSO模块动态加载;
如果编译中包含任何DSO模块,则mod_so会被自动包含进核心。如果希望核心能够装载DSO,
但不实际编译任何DSO模块,则需明确指定"--enable-so=static"。

一般语法
一般情况下你可以使用如下语法启用或者禁用某个模块:

--disable-MODULE
禁用MODULE模块(仅用于基本模块)
--enable-MODULE=shared
将MODULE编译为DSO(可用于所有模块)
--enable-MODULE=static
将MODULE静态连接进核心(仅用于扩展和实验模块)
--enable-mods-shared=MODULE-LIST
将MODULE-LIST中的所有模块都编译成DSO(可用于所有模块)
--enable-modules=MODULE-LIST
将MODULE-LIST静态连接进核心(可用于所有模块)

上述 MODULE-LIST 可以是:
(1)用引号界定并且用空格分隔的模块名列表
--enable-mods-shared='headers rewrite dav'
(2)"most"(大多数模块)
(3)"all"(所有模块)
--enable-mods-shared=most

默认不选择模块,那就会安装好基本的模块,一般都需要的,如果是选择most,则包含基本模块和扩展模块,如果选择all,则真的是全部 ^_^
选择DSO方式到时候会有一堆的loadmodule,自己不需要的就可以注释掉
那其实我们一般都是选择安装哪些扩展模块就好了,哪些有用呢?

--enable-expires /
(可以添加文件过期的限制,有效减轻服务器压力,缓存在用户端,有效期内不会再次访问服务器,除非按f5刷新,但也导致文件更新不及时)
--enable-proxy /
(代理功能有必要,因为可以处理跨域问题以及可以分离一些其它的请求处理)
--enable-deflate /
(压缩功能,网页可以达到40%的压缩,节省带宽成本,但会对cpu压力有一点提高)
--enable-rewrite /
(可以做重新,比较实用,文件有变化时很好)
--enable-headers /
(文件头信息改写,压缩功能需要)

其它的扩展功能就可以参考手册了,这里不一一描述,仅描述阿权觉得比较实用的几个扩展模块,下面是摘录的配置方法(仅供参考):

############# gzip ############
<Location />
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4/.0[678] no-gzip
BrowserMatch /bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI /.(?:gif|jpe?g|png|swf|exe|ico)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
</Location>

############# expire ############
<IfModule expires_module>
ExpiresActive On
ExpiresDefault "access plus 1 day"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/html "access plus 12 hours"
ExpiresByType text/css "access plus 12 hours"
ExpiresByType text/javascript "access plus 12 hours"
</IfModule>

############ proxy
#ProxyPass /aslibra http://aslibra.com/blog
#ProxyPassReverse /aslibra http://aslibra.com/blog

############ rewrite
RewriteEngine On
RewriteRule ^/blog/test[0-9]{1,}/.htm$ /blog/index.php

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值