《Linux服务器配置全程实录》第8章配置Web服务器,在本章中将介绍通过Apache配置HTTP、HTTPS、WebDAV、反向代理、安全配置、多种用户认证方式、虚拟主机,JSP环境搭建,LAMP环境搭建以及使用Lighttpd实现HTTP、HTTPS、虚拟主机等的相关内容。本节为大家介绍Apache常见编译选项。
AD:2013云计算架构师峰会课程资料下载
8.5.3 Apache常见编译选项
在上述编译Apache时使用的选项用以保证其实现常规Web服务器的一些功能,也可以在编译时增加其他的选项来改变Apache的运行状态。这些选项主要包括以下几种。
(1)--prefix=<目录>:指定Apache的安装目录。
(2)--exec-prefix=<目录>:指定Apache的顶级安装目录,使用该参数时可以配合以下参数将Apache的文件安装到不同的目录,可以方便地在不同主机之间共享Apache相关的文件。该参数的默认值为--prefix参数指定的目录。
--bindir=<目录>:指定用户可执行目录,用于存放htpasswd、dbmmanage等支持程序。该参数默认值为--exec-prefix 参数指定目录下的bin目录。
--includedir=<目录>:指定Apache的C头文件目录。该参数默认值为--exec-prefix 参数指定目录下的include目录。
--libdir=<目录>:指定Apache对象代码库目录。该参数默认值为--exec-prefix 参数指定目录下的lib目录。
--libexecdir=<目录>:指定Apache程序可执行目录,也就是动态加载模块目录。该参数默认值为--exec-prefix 参数指定目录下的libexec目录。
--mandir=<目录>:指定Apache帮助文档目录。该参数默认值为--exec-prefix 参数指定目录下的man目录。
--sbindir=<目录>:指定Apache系统管理员可执行目录,用于存放运行HTTP服务器所必须的httpd、apachectl、suexec等服务程序。该参数默认值为--exec-prefix 参数指定目录下的sbin目录。
--sysconfdir=<目录>:指定Apache只读的单一主机数据目录,用于存放httpd.conf、mime.types等服务器配置文件。该参数默认值为--exec-prefix 参数指定目录下的etc目录。
(3)--disable-<模块名>:指定Apache禁用的模块(仅用于基本模块)。
(4)--enable-<模块名>=shared:指定Apache将模块编译为DSO(可用于所有模块)。
(5)--enable-<模块名>=static:指定Apache将模块静态连接进核心(可仅用于扩展和实验模块)。
(6)--enable-mods-shared='<模块列表>':指定Apache将模块列表中指定的模块都编译成DSO(可用于所有模块)。
(7)--enable-modules='<模块列表>':指定Apache将模块列表中指定的模块静态连接进核心(可仅用于扩展和实验模块)。
提示:模块列表使用空格分隔的多个模块名称,也可以使用all关键字表示所有模块。编译时将忽略模块名和模块列表中的拼写错误。用于模块名和模块列表中的名称是"mod_NAME"中去掉"mod_"并将剩余部分中的下划线"_"替换为连字符"-"以后的结果,比如"mod_authn_file"模块应当表示为"authn-file"(Apache中默认已包含的模块见表8-2,其中基本模块默认在Apache是已启用,如不需要使用在编译时必须明确禁用,而其他默认是没有启用的,如需要使用在编译时必须明确启用)。
(8)--enable-v4-mapped:指定Apache使用相同的套接字同时处理IPv4和IPv6的连接,也就是启用地址映射。在FreeBSD、NetBSD、OpenBSD以外的平台上是默认值。
(9)--disable-v4-mapped:指定Apache使用不同的套接字分别处理IPv4和IPv6的连接,也就是禁用地址映射。在FreeBSD、NetBSD、OpenBSD上是默认值。
(10)--enable-maintainer-mode:指定Apache使用所有警告和调试符号编译源代码,在生产环境中的服务器推荐不使用该参数,因为该参数会影响性能。
(11)--enable-exception-hook :指定Apache允许在子进程崩溃以后启用一个钩子来运行异常处理程序。
(12)--with-port=<端口>:指定Apache的默认的监听端口,该参数默认为80。该参数只是为了生成httpd.conf。
(13)--with-ssl=<目录>:如果启用了mod_ssl,configure脚本将会自动搜寻已经安装的OpenSSL,也可以通过该参数指定SSL/TLS工具包的安装路径。
(14)--with-z=<目录>:如果启用了压缩模块(比如mod_deflate),configure脚本将会自动搜寻已经安装的zlib库,也可以通过该参数指定zlib库的安装路径。
(15)--with-perl=<目录>:在Apache中有一些使用用Perl写的支持脚本(比如apxs、dbmmanage)需要Perl5解释器。如果系统中存在多个Perl解释器,可使用该参数来指定正确Perl解释器的版本。如果没有Perl 5也没关系,这并不影响Apache httpd的编译和安装,只是相关的支持脚本不能使用而已。
(16)--with-pcre=<目录>:在Perl 5中兼容正则表达式库(PCRE)已经被包含其中,如果系统中已经安装了PCRE,可以通过该参数指定其安装路径。
(17)--enable-static-support:使用静态连接(默认为动态连接)编译所有二进制支持程序。若不使用该参数也可以使用以下参数分别指定每个支持程序。
--enable-static-ab:使用静态连接编译ab。
--enable-static-checkgid:使用静态连接编译checkgid。
--enable-static-htdbm:使用静态连接编译htdbm。
--enable-static-htdigest:使用静态连接编译htdigest。
--enable-static-htpasswd:使用静态连接编译htpasswd。
--enable-static-logresolve:使用静态连接编译logresolve。
--enable-static-rotatelogs:使用静态连接编译rotatelogs。