Project description.

The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT.

The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards

Apache 2.0.29 Changelog
  • Add buffering in core_output_filter to ensure that long lists of small buckets don't cause small packet writes. [Brian Pane, Ryan Bloom]
  • Fix the installation target to make sure that the manual is installed in the correct location. [Yoshifumi Hiramatsu and Gomez Henri ]
  • Fix the cmd command for mod_include. When we are processing a cmd command, we do not want to use the r->filename to set the command name. The command comes from the SSI tag. To do this, I added a variable to the function that builds the command line in mod_cgi. This allows the include_cmd function to specify the command line itself. [Ryan Bloom]
  • Change open_logs hook to return a value, allowing you to flag a error while opening logs [Ian Holsman, Doug MacEachern]
  • Change post_config hook to return a value, allowing you to flag a error post config [Ian Holsman, Jeff Trawick]
  • Allow SUEXEC_BIN (the path to the suexec binary that is hard-coded into the server) to be specified to the configure script by the --with-suexec-bin parameter. [Aaron Bannert]
  • Fix segv in worker MPM following accept on pipe-of-death [Brian Pane]
  • Add mod_deflate to experimental. [Ian Holsman, Justin Erenkrantz]
  • Bail out at configure time if an invalid MPM was specified. [jean-frederic clere ]
  • Prevent segv in ap_note_basic_auth_failure() when no AuthName is configured [John Sterling ]
  • Fix apxs to use sbindir. [Henri Gomez ]
  • Fix a problem with IPv6 vhosts. PR #8118 [Jeff Trawick]
  • Optimization for the BNDM string-search function in mod_include. [Brian Pane]
  • Fixed the behavior of the XBitHack directive. [Taketo Kabe , Cliff Woolley] PR#8804
  • The threaded MPM for Unix has been removed. Use the worker MPM instead. [various]
  • APR-ize the resolver logic in mod_unique_id. This fixes a bug in logging the error from a failed DNS lookup. [Jeff Trawick]
  • Added the missing macros AP_INIT_TAKE13 and AP_INIT_TAKE123. [Cliff Woolley]
  • Get mod_cgid killed when a MPM exits due to a fatal error. [Jeff Trawick]
  • Fix a file descriptor leak in mod_include. When we include a file, we use a sub-request, but we didn't destroy the sub-request immediately, instead we waited until the original request was done. This patch closes the sub-request as soon as the data is done being generated. [Brian Pane ]
  • Allow modules that add sockets to the ap_listeners list to define the function that should be used to accept on that socket. Each MPM can define their own function to use for the accept function with the MPM_ACCEPT_FUNC macro. This also abstracts out all of the Unix accept error handling logic, which has become out of synch across Unix MPMs. [Ryan Bloom]
  • Fix a bug which would cause the response headers to be omitted when sending a negotiated ErrorDocument because the required filters were attached to the wrong request_rec. [John Sterling ]
  • Remove commas from the end of the macros that define directives that are used by MPMs. Prior to this patch, you would use these macros without commas, which was unlike the macros for any other directives. Now, the caller provides the comma rather than the macro providing it. This makes the macros look more like the rest of the directives. [Ryan Bloom and Cliff Woolley]
  • Add 'redirect-carefully' environment option to disable sending redirects under special circumstances. This is helpful for Microsoft's WebFolders when accessing a directory resource via DAV methods. [Justin Erenkrantz]
  • Begin to abstract out the underlying transport layer. The first step is to remove the socket from the conn_rec, the server now lives in a context that is passed to the core's input and output filters. This forces us to be very careful when adding calls that use the socket directly, because the socket isn't available in most locations. [Ryan Bloom]
  • Really reset the MaxClients value in worker and threaded when the configured value is not a multiple of the number of threads per child. We said we did previously but we forgot to. [Jeff Trawick]
  • Add Debian layout. [Daniel Stone ]
  • If shared modules are requested and mod_so is not available, produce a fatal config-time error. [Justin Erenkrantz]
  • Improve http2env's performance by cutting the work it has to do. [Brian Pane ]
  • use new 'apr_hash_merge' function in mod_mime (performance fix) [Brian Pane ]