您正在查看: Apache 分类下的文章

Apache2.0新特性概述 - Apache 2.2 中文版参考手册

apache > HTTP Server > 文档 > 版本2.2
   致谢 | 译者声明 | 本篇译者:金步国 | 本页最后更新:2006年3月21日 | 获取最新版本
apache 2.0 新特性概述

此文档描述了Apache 1.3和2.0版本之间的主要变化。

核心的增强

Unix线程

在支持POSIX线程的Unix系统上,现在Apache能在混合的多进程、多线程模式下运行,使很多(但非全部)配置的可伸缩性得到了改善。

新的编译系统

重写了编译系统,现在是基于autoconf和libtool的,使得Apache的配置系统与其他软件包更加相似。

多协议支持

Apache现在已经拥有了能够支持多协议的底层构造。mod_echo就是一个例子。

对非Unix平台更好的支持

Apache2.0在诸如BeOS、OS/2、Windows等非Unix平台上有了更好的速度和稳定性。随着平台特定的多路处理模块(MPM)和Apache可移植运行时(APR)的引入,Apache在这些平台上的指令由它们本地的API指令实现。避免了以往使用POSIX模拟层造成的bug和性能低下。

新的 Apache API

2.0中模块的API有了重大改变。很多1.3中模块排序和模块优先级的问题已经不复存在了。2.0自动处理了很多这样的问题,模块排序现在用per-hook的方法进行,从而拥有了更多的灵活性。另外,增加了新的调用以提高模块的性能,而无需修改Apache服务器核心。

IPv6 支持

在所有能够由Apache可移植运行时库(APR library)提供IPv6支持的系统上,Apache默认使用IPv6侦听套接字。另外,Listen、NameVirtualHost、VirtualHost指令也支持IPv6的数字地址串(比如:"Listen [2001:db8::1]:8080")。

过滤器

Apache的模块现在可以写成过滤器的形式,当内容流经它进入服务器或从服务器流出的时候进行处理。比如,可以用mod_include中的INCLUDES过滤器将CGI脚本的输出解析为服务器端包含指令。而mod_ext_filter允许外部程序充当过滤器的角色,就象用CGI程序做处理器一样。

多语种错误应答

返回给浏览器的错误信息现在已经用SSI文档实现了多语种化。管理员可以利用此功能进行定制以达到感观的一致。

简化了配置

很多易混淆的配置项已经进行了简化。经常产生混淆的Port和BindAddress配置项已经取消了;用于绑定IP地址的只有Listen指令;ServerName指令中指定的服务器名和端口仅用于重定向和虚拟主机的识别。

本地 Windows NT Unicode 支持

Apache2.0在WindowsNT上的文件名全部使用utf-8编码。这个操作直接转换成底层的Unicode文件系统,由此为所有以WindowsNT(包括Windows2000/XP/2003)为基础的安装提供了多语言支持。这一支持目前尚未涵盖Windows95/98/ME系统,因为它们仍使用机器本地的代码页进行文件系统的操作。

正则表达式库更新

Apache2.0包含了perl兼容的正则表达式库(PCRE)。所有正则表达式现在都使用了更强大的perl 5 语法。

模块的增强

mod_ssl

Apache2.0中的新模块。此模块是OpenSSL提供的一个SSL/TLS加密协议接口。

mod_dav

Apache2.0中的新模块。此模块继承了HTTP分布式发布和版本控制规范,用于发布和维护web内容。

mod_deflate

Apache2.0中的新模块。此模块允许支持此功能的浏览器请求的页面内容在发送前进行压缩,以节省网络带宽。

mod_auth_ldap

Apache2.0.41中的新模块。此模块允许使用LDAP数据库存储HTTP基本认证所需的信息。随之而来的另一个模块mod_ldap则提供了连接池和结果的缓冲。

mod_auth_digest

利用共享内存实现了对跨进程会话缓冲的额外支持。

mod_charset_lite

Apache2.0中的新模块。这个试验模块允许在不同的字符集之间进行转换和重新编码。

mod_file_cache

Apache2.0中的新模块。这个模块包含了Apache1.3中mod_mmap_static模块的功能,另外进一步增加了缓冲能力。

mod_headers

此模块在Apache2.0中更具灵活性。现在,它可以更改mod_proxy使用的请求头信息,并可以有条件地设置应答头信息。

mod_proxy

代理模块已经被完全重写以充分利用新的过滤器结构的优势,从而实现一个更为可靠的HTTP/1.1代理模块。另外,新的<Proxy>配置段提供了更具可读性(而且更快)的代理站点控制;同时,重载<Directory "proxy:...">指令的方法已经不再被支持了。这个模块现在依照协议支持分为proxy_connect、proxy_ftp、proxy_http三个部分。

mod_negotiation

新的ForceLanguagePriority指令可以确保在所有情况下客户端都收到一个单一文档,以取代不可接受或多选择的响应。另外,内容协商和MultiViews算法已经进行了优化以提供更完美的结果,并提供了包括文档内容的新类型表。

mod_autoindex

经过自动索引后的目录列表现在可被配置为使用html表格从而使格式更加清晰,而且允许更为细化的排序控制,包括版本排序和通配符过滤目录列表。

mod_include

新的指令集允许修改默认的SSI元素的开始和结束标签,而且允许以主配置文件里的错误提示和时间格式的配置取代SSI文档中的相应部分。正则表达式(现在已基于Perl的正则表达式语法)的解析和分组结果可以用mod_include的变量 $0 .. $9 取得。

mod_auth_dbm

现在可以使用AuthDBMType指令支持多种类似DBM的数据库

The Apache License, Version 2.0 - Apache 2.2 中文版参考手册

apache > HTTP Server > 文档 > 版本2.2
   致谢 | 译者声明 | 本篇译者:<虚位以待> | 本篇译稿完成时间:?年?月?日 | 获取最新版本
The apache License, Version 2.0

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

  • Definitions

    "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.

    "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.

    "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

    "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.

    "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.

    "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.

    "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).

    "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

    "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."

    "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.

  • Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
  • Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
  • redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
  • You must give any other recipients of the Work or Derivative Works a copy of this License; and
  • You must cause any modified files to carry prominent notices stating that You changed the files; and
  • You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
  • If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
  • You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

  • Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
  • Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
  • Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
  • Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
  • Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
  • END OF TERMS AND CONDITIONS

    APPENDIX: How to apply the Apache License to your work.

    To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.

    Copyright [yyyy] [name of copyright owner]
    

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

    从1.3升级到2.0 - Apache 2.2 中文版参考手册

    apache > HTTP Server > 文档 > 版本2.2
       致谢 | 译者声明 | 本篇译者:金步国 | 本页最后更新:2006年1月7日 | 获取最新版本
    从1.3升级到2.0

    为了帮助大伙儿升级,我们为现在的apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES文件中得到更多信息。

    编译时配置的改变
    • Apache现在使用autoconf和libtool系统来进行安装进程的配置。这个系统用起来很像Apache1.3的APACI系统,但并不相同。
    • 在普通的选择编译模块的基础上,Apache2.0把请求进程的主要部分移到了多路处理模块(MPM)里。
    运行时配置的改变
    • Apache1.3服务器核心中的很多指令现在都放到了MPM里面。如果你希望服务器的行为能够尽量的类似于Apache1.3 ,你应当选择preforkMPM。其他的MPM将拥有不同的指令来控制进程创建和请求过程。
    • proxy module已经被修补以兼容HTTP/1.1。其中重要的改变之一是:代理的访问控制现在是放在<Proxy>段而不是<Directory proxy:>段里面了。
    • 许多模块中PATH_INFO (在真实文件名后附加路径信息)的处理有了变化。以前作为处理器而现在作为过滤器出现的模块现在可能不再接受包含PATH_INFO的请求。诸如INCLUDES或php过滤器将在处理核心的最顶层得到实现,从而拒绝包含PATH_INFO的请求。你可以用AcceptPathInfo指令来迫使处理核心接受包含PATH_INFO的请求,从而恢复服务器端包含中使用PATH_INFO的能力。
    • CacheNegotiatedDocs指令现在使用 On 或 Off 参数了。原有的CacheNegotiatedDocs应该代之以CacheNegotiatedDocs on
    • ErrorDocument指令不再用引号开始的参数来指定文本内容了。取而代之的是用双引号把文本内容括起来。比如原有的配置:

      ErrorDocument 403 "Some Message

      应该代之以:

      ErrorDocument 403 "Some Message"

      只要第二个参数不是有效的URL或路径名,它就会被当作是一个文本信息。

    • AccessConfig和 ResourceConfig指令不复存在了。现有的这些指令可以用Include指令代替以实现相同的功能。如果你使用的是这些指令的默认值而没有把它们放到配置文件里的话,你可能需要把"Include conf/access.conf"和"Include conf/srm.conf"加到你的httpd.conf里。为了确保Apache用象以前一样的顺序读取这些配置文件,应该把Include指令放到httpd.conf的结束部分,并将包含srm.conf的语句放在包含access.conf的语句的前面。
    • BindAddress和Port指令不再存在了。相同的功能由更加灵活的Listen指令提供。
    • Apache1.3中Port指令的另一功能是设定自引用的URL的端口。Apache2.0中对等的是新的ServerName语法:它已经被修改成在一条指令里同时为自引用的URL指定服务器名和端口号。
    • ServerType指令不复存在了。用于伺服请求的方法现在取决于MPM的选择。目前还没有设计出用于被inetd(端口监视程序)载入的MPM。
    • mod_log_agent和mod_log_referer被去掉了。取代以使用CustomLog指令的mod_log_config模块。
    • AddModule和ClearModuleList指令不复存在了。这些指令原用于确定模块以正确的顺序被激活。而新的Apache2.0 API允许模块明确的指定它们的顺序,从而这些指令就不再有存在的必要了。
    • FancyIndexing指令被去掉了,取而代之的是IndexOptions指令的FancyIndexing选项。
    • 由模块mod_negotiation提供的MultiViews内容协商机制在其默认文件匹配方面变得更加严格了,只匹配允许协商的文件。可以用MultiviewsMatch 指令恢复到原来的匹配模式。
    • (2.0.51以后) ErrorHeader指令的功能合并到Header指令中去了。因为原来的是一个谬误。应当使用:

      Header always set foo bar

      代替原来的使用方式。

    杂项的改变
    • Apache1.3中的实验模块mod_auth_digest现在是基本模块了。
    • Apache1.3中的实验模块mod_mmap_static现在被mod_file_cache代替了。
    • 发行包经过了重新组织,从而不再包含一个独立的src目录。取而代之的是将源代码有逻辑的组织在发行包的主目录下面。编译后的服务器的安装将从各自的目录下进行。
    第三方模块

    Apache2.0中的服务器API有了巨大的变化。现有的为Apache1.3设计的模块未经修改将不能运行在Apache2.0上。详情请参见开发者文档。

    从1.3升级到2.0 - Apache 2.2 中文版参考手册

    apache > HTTP Server > 文档 > 版本2.2
       致谢 | 译者声明 | 本篇译者:金步国 | 本页最后更新:2006年1月7日 | 获取最新版本
    从1.3升级到2.0

    为了帮助大伙儿升级,我们为现在的apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES文件中得到更多信息。

    编译时配置的改变
    • Apache现在使用autoconf和libtool系统来进行安装进程的配置。这个系统用起来很像Apache1.3的APACI系统,但并不相同。
    • 在普通的选择编译模块的基础上,Apache2.0把请求进程的主要部分移到了多路处理模块(MPM)里。
    运行时配置的改变
    • Apache1.3服务器核心中的很多指令现在都放到了MPM里面。如果你希望服务器的行为能够尽量的类似于Apache1.3 ,你应当选择preforkMPM。其他的MPM将拥有不同的指令来控制进程创建和请求过程。
    • proxy module已经被修补以兼容HTTP/1.1。其中重要的改变之一是:代理的访问控制现在是放在<Proxy>段而不是<Directory proxy:>段里面了。
    • 许多模块中PATH_INFO (在真实文件名后附加路径信息)的处理有了变化。以前作为处理器而现在作为过滤器出现的模块现在可能不再接受包含PATH_INFO的请求。诸如INCLUDES或php过滤器将在处理核心的最顶层得到实现,从而拒绝包含PATH_INFO的请求。你可以用AcceptPathInfo指令来迫使处理核心接受包含PATH_INFO的请求,从而恢复服务器端包含中使用PATH_INFO的能力。
    • CacheNegotiatedDocs指令现在使用 On 或 Off 参数了。原有的CacheNegotiatedDocs应该代之以CacheNegotiatedDocs on
    • ErrorDocument指令不再用引号开始的参数来指定文本内容了。取而代之的是用双引号把文本内容括起来。比如原有的配置:

      ErrorDocument 403 "Some Message

      应该代之以:

      ErrorDocument 403 "Some Message"

      只要第二个参数不是有效的URL或路径名,它就会被当作是一个文本信息。

    • AccessConfig和 ResourceConfig指令不复存在了。现有的这些指令可以用Include指令代替以实现相同的功能。如果你使用的是这些指令的默认值而没有把它们放到配置文件里的话,你可能需要把"Include conf/access.conf"和"Include conf/srm.conf"加到你的httpd.conf里。为了确保Apache用象以前一样的顺序读取这些配置文件,应该把Include指令放到httpd.conf的结束部分,并将包含srm.conf的语句放在包含access.conf的语句的前面。
    • BindAddress和Port指令不再存在了。相同的功能由更加灵活的Listen指令提供。
    • Apache1.3中Port指令的另一功能是设定自引用的URL的端口。Apache2.0中对等的是新的ServerName语法:它已经被修改成在一条指令里同时为自引用的URL指定服务器名和端口号。
    • ServerType指令不复存在了。用于伺服请求的方法现在取决于MPM的选择。目前还没有设计出用于被inetd(端口监视程序)载入的MPM。
    • mod_log_agent和mod_log_referer被去掉了。取代以使用CustomLog指令的mod_log_config模块。
    • AddModule和ClearModuleList指令不复存在了。这些指令原用于确定模块以正确的顺序被激活。而新的Apache2.0 API允许模块明确的指定它们的顺序,从而这些指令就不再有存在的必要了。
    • FancyIndexing指令被去掉了,取而代之的是IndexOptions指令的FancyIndexing选项。
    • 由模块mod_negotiation提供的MultiViews内容协商机制在其默认文件匹配方面变得更加严格了,只匹配允许协商的文件。可以用MultiviewsMatch 指令恢复到原来的匹配模式。
    • (2.0.51以后) ErrorHeader指令的功能合并到Header指令中去了。因为原来的是一个谬误。应当使用:

      Header always set foo bar

      代替原来的使用方式。

    杂项的改变
    • Apache1.3中的实验模块mod_auth_digest现在是基本模块了。
    • Apache1.3中的实验模块mod_mmap_static现在被mod_file_cache代替了。
    • 发行包经过了重新组织,从而不再包含一个独立的src目录。取而代之的是将源代码有逻辑的组织在发行包的主目录下面。编译后的服务器的安装将从各自的目录下进行。
    第三方模块

    Apache2.0中的服务器API有了巨大的变化。现有的为Apache1.3设计的模块未经修改将不能运行在Apache2.0上。详情请参见开发者文档。

    从1.3升级到2.0 - Apache 2.2 中文版参考手册

    apache > HTTP Server > 文档 > 版本2.2
       致谢 | 译者声明 | 本篇译者:金步国 | 本页最后更新:2006年1月7日 | 获取最新版本
    从1.3升级到2.0

    为了帮助大伙儿升级,我们为现在的apache用户提供了一份重要信息的文档说明。这些只是一些简要说明,你可以从新特性文档或src/CHANGES文件中得到更多信息。

    编译时配置的改变
    • Apache现在使用autoconf和libtool系统来进行安装进程的配置。这个系统用起来很像Apache1.3的APACI系统,但并不相同。
    • 在普通的选择编译模块的基础上,Apache2.0把请求进程的主要部分移到了多路处理模块(MPM)里。
    运行时配置的改变
    • Apache1.3服务器核心中的很多指令现在都放到了MPM里面。如果你希望服务器的行为能够尽量的类似于Apache1.3 ,你应当选择preforkMPM。其他的MPM将拥有不同的指令来控制进程创建和请求过程。
    • proxy module已经被修补以兼容HTTP/1.1。其中重要的改变之一是:代理的访问控制现在是放在<Proxy>段而不是<Directory proxy:>段里面了。
    • 许多模块中PATH_INFO (在真实文件名后附加路径信息)的处理有了变化。以前作为处理器而现在作为过滤器出现的模块现在可能不再接受包含PATH_INFO的请求。诸如INCLUDES或php过滤器将在处理核心的最顶层得到实现,从而拒绝包含PATH_INFO的请求。你可以用AcceptPathInfo指令来迫使处理核心接受包含PATH_INFO的请求,从而恢复服务器端包含中使用PATH_INFO的能力。
    • CacheNegotiatedDocs指令现在使用 On 或 Off 参数了。原有的CacheNegotiatedDocs应该代之以CacheNegotiatedDocs on
    • ErrorDocument指令不再用引号开始的参数来指定文本内容了。取而代之的是用双引号把文本内容括起来。比如原有的配置:

      ErrorDocument 403 "Some Message

      应该代之以:

      ErrorDocument 403 "Some Message"

      只要第二个参数不是有效的URL或路径名,它就会被当作是一个文本信息。

    • AccessConfig和 ResourceConfig指令不复存在了。现有的这些指令可以用Include指令代替以实现相同的功能。如果你使用的是这些指令的默认值而没有把它们放到配置文件里的话,你可能需要把"Include conf/access.conf"和"Include conf/srm.conf"加到你的httpd.conf里。为了确保Apache用象以前一样的顺序读取这些配置文件,应该把Include指令放到httpd.conf的结束部分,并将包含srm.conf的语句放在包含access.conf的语句的前面。
    • BindAddress和Port指令不再存在了。相同的功能由更加灵活的Listen指令提供。
    • Apache1.3中Port指令的另一功能是设定自引用的URL的端口。Apache2.0中对等的是新的ServerName语法:它已经被修改成在一条指令里同时为自引用的URL指定服务器名和端口号。
    • ServerType指令不复存在了。用于伺服请求的方法现在取决于MPM的选择。目前还没有设计出用于被inetd(端口监视程序)载入的MPM。
    • mod_log_agent和mod_log_referer被去掉了。取代以使用CustomLog指令的mod_log_config模块。
    • AddModule和ClearModuleList指令不复存在了。这些指令原用于确定模块以正确的顺序被激活。而新的Apache2.0 API允许模块明确的指定它们的顺序,从而这些指令就不再有存在的必要了。
    • FancyIndexing指令被去掉了,取而代之的是IndexOptions指令的FancyIndexing选项。
    • 由模块mod_negotiation提供的MultiViews内容协商机制在其默认文件匹配方面变得更加严格了,只匹配允许协商的文件。可以用MultiviewsMatch 指令恢复到原来的匹配模式。
    • (2.0.51以后) ErrorHeader指令的功能合并到Header指令中去了。因为原来的是一个谬误。应当使用:

      Header always set foo bar

      代替原来的使用方式。

    杂项的改变
    • Apache1.3中的实验模块mod_auth_digest现在是基本模块了。
    • Apache1.3中的实验模块mod_mmap_static现在被mod_file_cache代替了。
    • 发行包经过了重新组织,从而不再包含一个独立的src目录。取而代之的是将源代码有逻辑的组织在发行包的主目录下面。编译后的服务器的安装将从各自的目录下进行。
    第三方模块

    Apache2.0中的服务器API有了巨大的变化。现有的为Apache1.3设计的模块未经修改将不能运行在Apache2.0上。详情请参见开发者文档。