]> granicus.if.org Git - apache/blob - CHANGES
mod_proxy_http: Make the proxy-interim-response environment variable
[apache] / CHANGES
1                                                          -*- coding: utf-8 -*-
2 Changes with Apache 2.5.0
3
4   *) mod_proxy_http: Make the proxy-interim-response environment variable
5      effective by formally overriding origin server behaviour. [Graham
6      Leggett, Co-Advisor <coad measurement-factory.com>]
7
8   *) core: Stop the HTTP_IN filter from attempting to write error buckets
9      to the output filters, which is bogus in the proxy case. Create a
10      clean mapping from APR codes to HTTP status codes, and use it where
11      needed. [Graham Leggett]
12
13   *) mod_proxy: Ensure we don't attempt to amend a table we are iterating
14      through, ensuring that all headers listed by Connection are removed.
15      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
16
17   *) core: apachectl -S prints wildcard name-based virtual hosts twice. 
18      PR54948 [Eric Covener]
19
20   *) mod_proxy: Reject invalid values for Max-Forwards. [Graham Leggett,
21      Co-Advisor <coad measurement-factory.com>]
22
23   *) mod_cache: If a 304 response indicates an entity not currently cached, then
24      the cache MUST disregard the response and repeat the request without the
25      conditional. [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
26
27   *) mod_proxy: Fix seg-faults when using the global pool on threaded
28      MPMs [Thomas Eckert <thomas.r.w.eckert gmail.com>, Jim Jagielski]
29
30   *) mod_proxy: Ensure network errors detected by the proxy are returned as
31      504 Gateway Timout as opposed to 502 Bad Gateway, in order to be
32      compliant with RFC2616 14.9.4 Cache Revalidation and Reload Controls.
33      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
34
35   *) mod_cache: Ensure that we don't attempt to replace a cached response
36      with an older response as per RFC2616 13.12. [Graham Leggett, Co-Advisor
37      <coad measurement-factory.com>]
38
39   *) core, mod_cache: Ensure RFC2616 compliance in ap_meets_conditions()
40      with weak validation combined with If-Range and Range headers. Break
41      out explicit conditional header checks to be useable elsewhere in the
42      server. Ensure weak validation RFC compliance in the byteranges filter.
43      Ensure RFC validation compliance when serving cached entities. PR 16142
44      [Graham Leggett, Co-Advisor <coad measurement-factory.com>]
45
46   *) core: Add the ability to do explicit matching on weak and strong ETags
47      as per RFC2616 Section 13.3.3. [Graham Leggett, Co-Advisor
48      <coad measurement-factory.com>]
49
50   *) mod_cache: Ensure that updated responses to HEAD requests don't get
51      mistakenly paired with a previously cached body. Ensure that any existing
52      body is removed when a HEAD request is cached. [Graham Leggett,
53      Co-Advisor <coad measurement-factory.com>]
54
55   *) mod_cache: Honour Cache-Control: no-store in a request. [Graham Leggett]
56
57   *) mod_cache: RFC2616 14.9.3 The s-maxage directive also implies the
58      semantics of the proxy-revalidate directive. [Graham Leggett]
59
60   *) mod_cache: Make sure that contradictory entity headers present in a 304
61      Not Modified response are caught and cause the entity to be removed.
62      [Graham Leggett]
63
64   *) mod_cache: Make sure Vary processing handles multivalued Vary headers and
65      multivalued headers referred to via Vary. [Graham Leggett]
66
67   *) mod_cache: When serving from cache, only the last header of a multivalued
68      header was taken into account. Fixed. [Graham Leggett]
69
70   *) mod_cache: Ignore response headers specified by no-cache=header and
71      private=header as specified by RFC2616 14.9.1 What is Cacheable. Ensure
72      that these headers are still processed when multiple Cache-Control
73      headers are present in the response. PR 54706 [Graham Leggett,
74      Yann Ylavic <ylavic.dev gmail.com>]
75
76   *) mod_cache: Invalidate cached entities in response to RFC2616 Section
77      13.10 Invalidation After Updates or Deletions. PR 15868 [Graham
78      Leggett]
79
80   *) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
81      [Basant Kumar Kukreja <basant.kukreja sun.com>, Alejandro Alvarez
82      <alejandro.alvarez.ayllon cern.ch>]
83
84   *) mod_dav: Do not segfault on PROPFIND with a zero length DBM.
85      PR 52559 [Diego Santa Cruz <diego.santaCruz spinetix.com>]
86
87   *) mod_dav: Do not fail PROPPATCH when prop namespace is not known.
88      PR 52559 [Diego Santa Cruz <diego.santaCruz spinetix.com>]
89
90   *) mod_dav: When a PROPPATCH attempts to remove a non-existent dead
91      property on a resource for which there is no dead property in the same
92      namespace httpd segfaults. PR 52559 [Diego Santa Cruz
93      <diego.santaCruz spinetix.com>]
94
95   *) mod_dav: PROPPATCH delete (svn propdel) silently discards errors.
96      PR 53525 [Arwin Arni <arwin collab.net>]
97
98   *) mod_dav: Ensure URI is correctly uriencoded on return. PR 54611
99      [Timothy Wood <tjw omnigroup.com>]
100
101   *) mod_dav: Sending a If or If-Match header with an invalid ETag doesn't
102      result in a 412 Precondition Failed. PR 54610 [Timothy Wood
103      <tjw omnigroup.com>]
104
105   *) mod_dav: Make sure that when we prepare an If URL for Etag comparison,
106      we compare unencoded paths. PR 53910 [Timothy Wood <tjw omnigroup.com>]
107
108   *) core, mod_ssl: Lift the restriction that prevents mod_ssl taking
109      full advantage of the event MPM. Enable the ability for a module
110      to reverse the sense of a poll event from a read to a write or vice
111      versa. [Graham Leggett]
112
113   *) htpasswd: Add -v option to verify a password. [Stefan Fritsch]
114
115   *) htpasswd, htdbm: Fix password generation. PR 54735. [Stefan Fritsch]
116
117   *) mod_dav: Improve error handling in dav_method_put(), add new
118      dav_join_error() function.  PR 54145.  [Ben Reser <ben reser.org>]
119
120   *) mod_auth_digest: Fix crashes if shm initialization failed. [Stefan
121      Fritsch]
122  
123   *) mod_ldap: LDAP connections used for authentication were not respecting
124      LDAPConnectionPoolTimeout.  PR 54587
125
126   *) core: ap_rgetline_core now pulls from r->proto_input_filters.
127
128   *) mod_proxy_html: process parsed comments immediately. 
129      Fixes bug where parsed comments may be lost. [Nick Kew]
130
131   *) mod_proxy_html: introduce doctype for HTML 5 [Nick Kew]
132
133   *) mod_proxy_html: fix typo-bug processing "strict" vs "transitional"
134      HTML/XHTML [Nick Kew]
135
136   *) core: Add option to add valgrind support. Use it to reduce false positive
137      warnings in mod_ssl. [Stefan Fritsch]
138
139   *) mod_lua: Add bindings for apr_dbd/mod_dbd database access
140      [Daniel Gruno]
141
142   *) mod_authn_file, mod_authn_dbd, mod_authn_dbm, mod_authn_socache:
143      Cache the result of the most recent password hash verification for every
144      keep-alive connection. This saves some expensive calculations.
145      [Stefan Fritsch]
146
147   *) http: Remove support for Request-Range header sent by Navigator 2-3 and
148      MSIE 3. [Stefan Fritsch]
149
150   *) core, http: Extend HttpProtocol with an option to enforce stricter HTTP
151      conformance or to only log the found problems. [Stefan Fritsch]
152
153   *) core: Correctly parse an IPv6 literal host specification in an absolute
154      URL in the request line. [Stefan Fritsch]
155
156   *) mod_ssl: add support for subjectAltName-based host name checking
157      in proxy mode. PR 54030. [Kaspar Brand]
158
159   *) mpm_event: Check that AsyncRequestWorkerFactor is not negative. PR 54254.
160      [Jackie Zhang <jackie qq zhang gmail com>]
161
162   *) mod_ssl: Add support for OpenSSL configuration commands [Stephen Henson]
163
164   *) EventOpt MPM
165
166   *) core: Add LogLevelOverride directive that allows to override the
167      loglevel for clients from certain IPs. This also works for things
168      like the SSL handshake where <If> LogLevel ... </If> is evaluated
169      too late. [Stefan Fritsch]
170
171   *) core: Add new directive Warning to issue warnings from a configuration
172      file. Both Warning and Error now generate a timestamped log message.
173      [Fabien Coelho] 
174
175   *) ap_expr: Add SERVER_PROTOCOL_VERSION, ..._MAJOR, and ..._MINOR
176      variables. [Stefan Fritsch]
177
178   *) core: New directive RegisterHttpMethod for registering non-standard
179      HTTP methods. [Stefan Fritsch]
180
181   *) core: New directive HttpProtocol which allows to disable HTTP/0.9
182      support. [Stefan Fritsch]
183
184   *) mod_allowhandlers: New module to forbid specific handlers for specific
185      directories. [Stefan Fritsch]
186
187   *) configure: Fix processing of --disable-FEATURE for various features.
188      [Jeff Trawick]
189
190   *) mod_systemd: New module, for integration with systemd on Linux.
191      [Jan Kaluza <jkaluza redhat.com>]
192
193   *) mod_cache_socache: New cache implementation backed by mod_socache
194      that replaces mod_mem_cache removed from httpd v2.2. [Graham
195      Leggett]
196
197   *) core: Add dirwalk_stat and pre_htaccess hooks, allowing mpm-itk
198      to be used without patches to httpd core.  [Jeff Trawick]
199
200   *) mod_lua: Add LuaInputFilter/LuaOutputFilter for creating content
201      filters in Lua [Daniel Gruno]
202
203   *) WinNT MPM: Store pid and generation for each thread in scoreboard
204      to allow tracking of threads from exiting children via mod_status
205      or other such mechanisms.  [Jeff Trawick]
206
207   *) mod_ssl: Catch missing or mismatched client cert/key pairs with
208      SSLProxyMachineCertificateFile/Path directives.  PR 52212.  
209      [Keith Burdis <keith burdis.org>, Joe Orton]
210
211   *) mod_lua: Allow scripts handled by the lua-script handler to return 
212      a status code to the client (such as a 302 or a 500) [Daniel Gruno]
213
214   *) mod_lua: Decline handling 'lua-script' if the file doesn't exist,
215      rather than throwing an internal server error. [Daniel Gruno]
216
217   *) mod_lua: Add functions r:flush and r:sendfile as well as additional
218      request information to the request_rec structure. [Daniel Gruno]
219
220   *) mod_lua: Add a server scope for Lua states, which creates a pool of
221      states with managable minimum and maximum size. [Daniel Gruno]
222
223   *) core: Add post_perdir_config hook.
224      [Steinar Gunderson <sgunderson bigfoot.com>]
225
226   *) mod_lua: Add new directive, LuaMapHandler, for dynamically mapping 
227      URIs to Lua scripts and functions using regular expressions.
228      [Daniel Gruno]
229
230   *) mod_lua: Add new directive LuaCodeCache for controlling in-memory
231      caching of lua scripts. [Daniel Gruno]
232
233   *) The following now respect DefaultRuntimeDir/DEFAULT_REL_RUNTIMEDIR:
234      - APIs: ap_log_pid(), ap_remove_pid, ap_read_pid()
235      - core: the scoreboard (ScoreBoardFile), pid file (PidFile), and
236        mutexes (Mutex)
237      - mod_cache: thundering herd lock directory
238      - mod_lbmethod_heartbeat, mod_heartmonitor: heartbeat storage file
239      - mod_ldap: shared memory cache
240      - mod_socache_shmcb, mod_socache_dbm: shared memory or dbm for cache
241      [Jeff Trawick]
242
243   *) suexec: Add --enable-suexec-capabilites support on Linux, to use
244      setuid/setgid capability bits rather than a setuid root binary.
245      [Joe Orton]
246
247   *) suexec: Add support for logging to syslog as an alternative to logging
248      to a file; configure --without-suexec-logfile --with-suexec-syslog.  
249      [Joe Orton]
250
251   *) mod_ssl: Add support for TLS Next Protocol Negotiation.  PR 52210.
252      [Matthew Steele <mdsteele google.com>]
253
254   *) cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will
255      be compiled by the build compiler instead of the host compiler.
256      Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected.
257      PR 51257. [Guenter Knauf]
258
259   *) core: In maintainer mode, replace apr_palloc with a version that
260      initializes the allocated memory with non-zero values, except if
261      AP_DEBUG_NO_ALLOC_POISON is defined. [Stefan Fritsch]
262
263   *) mod_policy: Add a new testing module to help server administrators
264      enforce a configurable level of protocol compliance on their
265      servers and application servers behind theirs. [Graham Leggett]
266
267   *) mod_firehose: Add a new debugging module able to record traffic
268      passing through the server in such a way that connections and/or
269      requests be reconstructed and replayed. [Graham Leggett]
270
271   *) mod_noloris
272
273   *) APREQ
274
275   *) Simple MPM
276
277   *) mod_serf
278
279   [Apache 2.5.0-dev includes those bug fixes and changes with the
280    Apache 2.4.xx tree as documented below, except as noted.]
281
282 Changes with Apache 2.4.x and later:
283
284   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/CHANGES?view=markup
285
286 Changes with Apache 2.2.x and later:
287
288   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/CHANGES?view=markup
289
290 Changes with Apache 2.0.x and later:
291
292   *) http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/CHANGES?view=markup
293