Contents of this page are obsolete.
This page is preserved and stored at this URL just from historical viewpoint.
Original URL was http://www.mm.media.kyoto-u.ac.jp/members/kameda/...
Please visit
www.kameda-lab.org
for recent information. (2002/12/06, kameda@ieee.org)
Overview of new features
API Changes
Some non-compatible changes were made to the Apache API in order to
deal with HTTP/1.1 compatibility. It is possible that some modules
will no longer work (specifically, those that process input using the
POST or PUT methods). If you encounter a module that does not work,
please contact the author. A programmer's note on the subject is
available.
Additionally, some changes were made to the CGI environment that
may cause some CGI scripts to work incorrectly. If you are
experiencing trouble with a CGI that worked fine under Apache 1.1.1,
please see our explanation of the changes.
New Features with Apache 1.2
New features with this release, as extensions of the Apache
functionality. Because the core code has changed so
significantly, there are certain liberties that earlier versions of
Apache (and the NCSA daemon) took that recent Apache versions are
pickier about - please check the compatibility notes if you have any
problems.
In addition to a number of bug fixes and internal performance
enhancements, Apache
1.2 has the following specific new user features:
- HTTP/1.1 Compliance
[Documentation to be written]
Aside from the optional proxy module (which operates as HTTP/1.0),
Apache is conditionally compliant with the HTTP/1.1 proposed standard,
as approved by the IESG and the
IETF HTTP working group.
HTTP/1.1 provides a much-improved protocol, and
should allow for greater performance and efficiency when transferring
files. Apache does, however, still work great with HTTP/1.0 browsers.
We are very close to being unconditionally compliant; if you note any
deviance from the proposed standard, please report it as a bug.
- eXtended Server Side Includes
(XSSI)
A new set of server-side include
directives allows the user to better create WWW pages. This includes
number of powerful new features, such as the ability to set variables
and use conditional HTML.
- File-based and Regex-enabled
Directive Sections
The new
<Files>
section allows directives to be enabled based on full filename, not just directory and URL. In
addition, <Files>
sections can appear in
.htaccess
files. <Files>
, along with
<Directory>
and <Location>
, can
also now be based on regular expressions, not just simple prefix
matching.
- Browser-based Environment
Variables
Environment variables can now be set based on the
User-Agent
string of the browser. Combined with XSSI, this allows you to write browser-based
conditional HTML documents.
- SetUID CGI Execution
Apache now
supports the execution of CGI scripts as users other
than the server user. A number of security checks are built in
to try and make this as safe as possible.
- URL Rewriting Module
The optional mod_rewrite
module is now included. This
module can provide powerful URL mapping, using regular
expressions. There's nothing this module can't do!
- Optional FastCGI Module Included
FastCGI is a high-performance alternative to CGI. FastCGI gets its speed by having the Web server keep the
application processes running between requests. So, unlike CGI, you do not have the overhead of starting up
a new process and doing application initialization (e.g. connecting to a database) each time somebody requests
a document. The processes start up with the Web server and keep on running.
- Enhanced, Configurable
Logging
The optional mod_log_config
included with earlier
versions of Apache is now standard, and has been enhanced to allow
logging of much more detail about the transaction, and can be used to
open more than one log file at once
(each of which can have a different log format).
- User Tracking (Cookies)
Revisions
The mod_cookies
included with previous versions of Apache
has been renamed mod_usertrack
, to more accurately
reflect its function (some people inadvertently thought it enabled
cookie support in Apache, which is not true - Apache supports the use
of cookies directly). It is also now possible to disable the
generation of cookies, even when
the cookie module is compiled in. Also, an expiry time can be set
on the cookies.
- Multiple IPs in
<VirtualHost>
[Documentation to be written]
The <VirtualHost> directive can now take more than one IP
address or hostname. This lets a single vhost handles requests
for multiple IPs or hostnames.
- CGI Debugging Environment
ScriptLog
allows you to now set up a log that records
all input and output to failed CGI scripts. This includes environment
variables, input headers, POST data, output, and more. This makes CGI
scripts much easier to debug.
- Resource Limits for CGI Scripts
New directives allow the limiting of resources used by CGI scripts
(e.g. max CPU time). This is helpful in preventing 'runaway' CGI
processes.
- Redirect Directive Can Return Alternate Status
The Redirect directive can return permanent or temporary redirects,
"Gone" or "See Other" HTTP status. For NCSA-compatibility,
RedirectTemp and RedirectPermanent are also implemented.
- Graceful Restarts
[Documentation to be written]
Apache can re-read the config files and re-open log files without
terminating transactions in progress.
- Simplified Compilation
The process of configuring Apache for compilation has been
simplified.
- Add or Remove Options
The Options
directive can now add or remove options from
those currently in force, rather than always replacing them.
- Command-line Help
The -h
command-line option now lists all the available
directives.
- Optional Headers Module to Set or Remove HTTP Headers
The optional mod_headers
module can be used to set custom
headers in the HTTP response. It can append to existing headers,
replace them, or remove headers from the response.
- Conditional Config Directives
A new <IfModule>
section allows directives to be
enabled only if a given module is loaded into the server.
- Authorization Directives Now Use
NCSA-style Syntax
[Documentation to be written]
The AuthUserFile, AuthGroupFile and AuthDigestFile commands now have a syntax
compatible with the NCSA server.
- NCSA Satisfy authentication
directive now implemented
Satisfy
allows for more flexible access control
configurations.
- Optional proxy module
An improved FTP, HTTP, and CONNECT mode SSL proxy is included with
Apache 1.2. Some of the changes visible to users:
- - Improved FTP proxy supporting PASV mode
- - NoProxy directive for excluding sites to proxy
- - CONNECT mode ports are configurable from a list
- - NoCache * directive for disabling proxy caching
- - Numerous bug fixes