从2.0升级到2.2
优质
小牛编辑
133浏览
2023-12-01
为了帮助大伙儿升级,我们为现在的Apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES
文件中得到更多信息。
这篇文档仅仅描述了从版本 2.0 到 2.2 的变化,如果你是从1.3版进行升级的,请查考从1.3升级到2.0文档。
编译时配置的改变
编译过程与2.0版本非常相似,你曾经使用过的configure
命令行(在安装目录下的build/config.nice
文件中)在某些情况下仍然可以使用。主要是模块的名称变化了,特别是认证和授权模块。具体如下:
- mod_imap 被更名为
mod_imagemap
- mod_auth 被拆分为
mod_auth_basic
、mod_authn_file
、mod_authz_user
、mod_authz_groupfile
- mod_access 被更名为
mod_authz_host
- mod_auth_ldap 被更名为
mod_authnz_ldap
- 需要使用 APR 1.0 API
- 将内置的PCRE升级到5.0版本
运行时配置的改变
除了下面讨论的某些特定配置需要进行很小的调整以外,现存的2.0版本的配置文件和启动脚本基本上不需要修改就可以直接用在2.2版本中。另外,如果你使用LoadModule
动态加载了标准模块。你还需要根据上面提到的模块名变更情况适当修改原有配置文件。
如果你选择使用新的2.2版默认配置文件,你将会发现它已经删除了绝大多数不属于基本配置的指令,比以前大大简化了。在安装目录下的conf/extra/
子目录中,有一组包含许多高级特性的示例配置。默认的配置文件被安装在conf/original
子目录中。
一些需要注意的运行时配置更改:
apachectl
选项startssl
被取消了。要启用SSL支持,你必须编辑httpd.conf
文件,在其中包含与mod_ssl
相关的指令,然后使用apachectl start
命令启动服务器。我们提供了一个示范如何启用mod_ssl
的配置文件:conf/extra/httpd-ssl.conf
。- 现在,
UseCanonicalName
的默认值是Off
。如果原来的配置文件中没有使用这个指令,你可以在其中添加UseCanonicalName On
以保持和原来的行为相同。 - 除非明确使用
UserDir
指令在配置文件中指定了一个目录,否则,mod_userdir
模块将不会被激活。若想恢复到与原来默认行为相同,你必须在配置文件中添加一行"UserDir public_html
"。
杂项变化
mod_cache
原来在2.0中是试验模块,现在变成标准模块了。mod_disk_cache
原来在2.0中是试验模块,现在变成标准模块了。mod_mem_cache
原来在2.0中是试验模块,现在变成标准模块了。mod_charset_lite
原来在2.0中是试验模块,现在变成标准模块了。mod_dumpio
原来在2.0中是试验模块,现在变成标准模块了。
第三方模块
大多数2.0版本的第三方模块可以不加修改的运行于2.2版本中。但是这些模块必须要重新进行编译后才能使用。