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 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:
<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.
User-Agent
string of the browser. Combined with XSSI, this allows you to write browser-based
conditional HTML documents.
mod_rewrite
module is now included. This
module can provide powerful URL mapping, using regular
expressions. There's nothing this module can't do!
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). If you have Apache
write any logs to a directory which is writable by anyone other than
the user that starts the server, see the
security tips document to be sure you aren't putting the security
of your server at risk.
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.
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.
Options
directive can now add or remove options from
those currently in force, rather than always replacing them.
-h
command-line option now lists all the available
directives.
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.
<IfModule>
section allows directives to be
enabled only if a given module is loaded into the server.
Satisfy
allows for more flexible access control
configurations.
Satisfy
,
MaxKeepAliveRequests,
RedirectPermanent and
RedirectTemp,
directives, and the following directives are now syntax-compatible with
NCSA:
AuthUserFile,
AuthGroupFile,
AuthDigestFile,
KeepAlive and
KeepAliveTimeout.