The next release of Apache will be version 1.2. The big new
feature in 1.2 will be support for HTTP/1.1, the new version
of the Hypertext Transfer Protocol. Apache 1.2 will fully
support this protocol as a Web server (except for the proxy
module). HTTP/1.1 is now going through the final stages of
approval as an Internet standard, and Apache 1.2 cannot be
fully released until it is approved, since there might be
changes.
However, HTTP/1.1 is not the only change in Apache 1.2. There
will be quite a few other new features, new optional and core
modules, and many bug fixes. In this feature, we list all the
major changes coming in 1.2. Each change is accompanied by a
link to the Apache Week issue where it is reported in more
depth.
-
Better Content Type Negotiation (Apache
Week 16 August 1996)
To overcome problems with some browsers, Apache's content
negotiation algorithm has been updated to better guess what
content type the browser wants.
-
Conditional configuration directives (Apache
Week 26 July 1996)
Configuration directives can be ignored if the module they
are defined in is not compiled in.
-
Customising for Browsers (Apache
Week 09 August 1996)
It will be possible to set environment variables based on
the browser's user-agent text. This will give CGI and SSI
scripts a simple way of customising their output based on
features available in the browser.
-
Easier CGI script debugging (Apache
Week 09 August 1996)
It will be easier to debug CGI scripts, because Apache can
now log the full input and output of the scripts.
-
Faster persistent connections (Apache
Week 02 August 1996)
Various changes have been made to increase the speed of
persistent connections.
-
File, Directory and Limit can take regular
expressions (Apache
Week 02 August 1996)
The files and URLs affected by each of these sections can
be defined by regular expressions.
-
Graceful Restarts (Apache
Week 28 June 1996)
Apache can re-read the config files and re-open log files
without terminating transactions in progress.
-
HTTP/1.1 support (Apache
Week 16 August 1996)
Apache will be 'unconditionally compliant' with the
HTTP/1.1 specification (except for mod_proxy).
-
Limit access on per-file basis (Apache
Week 02 August 1996)
A new section, <File>, can be used to restrict access
on a file-by-file basis. It will now be possible to (for
example) password protect a single file.
-
More SSI Commands (Apache
Week 09 August 1996)
The 'extended SSI' module (XSSI) will replace the current
server-side-includes module. This will give a number of
powerful new features, such as the ability to set variables
and use conditional statements.
-
Multiple configurable log files (Apache
Week 16 August 1996)
More than one log file can use used, with the log format
fully customisable. This reduces the need for addition log
modules (mod_log_referer or mod_log_agent), and make it
much easier to add customised log files and formats.
-
PICs module (Apache
Week 12 July 1996)
An optional module will be included which can provide PICS
labels.
-
Resource limits for CGI scripts (eg max CPU time)
(Apache
Week 02 August 1996)
To prevent runaway processes, the resources used by CGI
scripts can be limited.
-
Rewrite module (Apache
Week 09 August 1996)
The 'rewrite' module will be included with Apache for the
first time. This module can be used to map incoming URLs
onto other URLs, using regular expressions.
-
Setuid CGI execution (Apache
Week 09 August 1996)
Apache will support the execution of CGI scripts as users
other than the server user. A number of security checks
will be built in to try and make this as safe as possible.
-
Simplified configuration file format (Apache
Week 09 August 1996)
The process of configuring Apache for compilation has been
simplified.
-
User Tracking (cookie module) Updates (Apache
Week 02 August 1996)
It will be possible to disable the generation of cookies,
even when the cookie module is compiled in. Also, an expiry
time can be set of the cookies.
A number of bugs from 1.1 have been fixed. Some of the major
ones are:
-
KeepAlive connection problems on some browsers
-
If ErrorDocument redirect fails, displays filename
-
Negotiation module negotiates on proxy requests (eg
proxy:") then fails
-
Scoreboard out of date (shows PID of children that have
died)
-
Problem with ScriptAlias including path info data
-
<Location> matches directory sections
-
support HTTP continuation headers
-
mod_dir truncates file size
-
Updates for QNX, OS/2, A/UX, IRIX, AIX compile warnings or
system-specific behaviour