Release: 1.2.1 (Released 6th July 1997) (local download
sites)
Beta: None
Bugs fixed in 1.3:
-
<File> sections were not being indented
by mod_info.
-
Definitions of CC and OPTIM at compilation time were not
being propagated to the support directory Makefile
Patches to Apache 1.2 bugs will be made available in the apply
to 1.2.1 directory on the Apache site. Some new features
and other unofficial patches are available in the 1.2
patches directory. For details of all previously reported
bugs, see the Apache bug database and
Known
Bugs page. Many common configuration questions are
answered in the Apache FAQ.
Unless otherwise noted, all the new features discussed here
are planned for Apache 1.3 and not Apache 1.2.1.
The next release of Apache, called version 1.3, will run on
Windows 95 and Windows NT systems. Although Apache will be
very similar on Unix and Windows, there are some differences.
The main ones are:
-
The Windows version is multithreaded
-
The Windows version loads optional modules from DLL files
There are also some differences in the configuration files
between Unix and Windows. For example, on Unix the file
/dev/null is used to represent a non-existant
file. Under Windows this needs to be NUL. In
addition, the Windows version will be distributed mainly as a
set of executable programs and DLLs, rather than source, so the
configuration files will show how to load additional modules as
DLLs (under Unix this would normally mean recompiling the
server). Because of these differences, the Windows release will
contain separate configuration files for Windows and Unix.
The SSI language will be enhanced in the next release to
allow more string comparisons. At the moment the only
comparisons allowed between strings an exact match or no
match (= and !=). From 1.3 onwards, strings can also be
compared with <, >, >= and <=.
A new phase has been added to the Apache module API. This is
called the "child init" phase, and is called once for each
new child process. It has the same parameters as the existing
"init" phase (which is called once when the server starts).
This "child_init" phase is only called for each
process, not per thread (this only applies to the
Windows version of Apache for now).
Following last week's article on how to achieve hit rates of
up to 5 million per day, we have seen some reports of much
higher hit rates. In fact, 50 or so hits per second is
probably the low end of what you should expect from Apache
(provided you have sufficient RAM, such as 128Mb). For
example, the unofficial Wimbledon site, www.wimbledon.com got
bursts of over 1,000 hits per second, according to a recent
posting in comp.infosystems.www.servers.unix.
Microsoft has
recently released Platform Prevew 2 of Internet Explorer 4.
This is aimed mainly at developers since it makes
considerable changes to the underlying Windows operating
system when it is installed. However there are a couple of
bugs related to how Internet Explorer 4 PR 2 (IE4PR2)
implements HTTP which may cause problems against Apache and
other HTTP/1.1 servers.
Firstly, IE4PR2 does not handle kept-alive connections for
responses other than 200 (OK).
Secondly, the Java virtual machine makes a HTTP/1.1 request
but does not understand HTTP/1.1 responses. There have been
examples of other clients which do not understand HTTP/1.1
responses, and Apache can be configured to mark its response
as HTTP/1.0 (although it is still really HTTP/1.1). But in
this case the client is specifically making a HTTP/1.1
request, so Apache should not need to reply with HTTP/1.0.
It may be possible to implement work-arounds for both these
problems. However this a beta version of the software, so
bugs are to be expected and these problems certainly ought to
be fixed before the final release.
The RealAudio player version 4.0 cannot understand the normal
Apache responses. Apache responds to all requests (except
HTTP/0.9 ones) with an HTTP/1.1 format message. This is the
correct thing to do according to the specifications and most
browsers and plug-ins work correctly, ignoring the extra
HTTP/1.1 fields that they do not understand. However some
browsers and plug-ins check the exact version number and do
not work unless it is HTTP/1.0. Apache has a work-around for
these broken clients. To fix RealAudio 4.0, the following
line needs to be added to a configuration file.
BrowserMatch "RealPlayer 4.0" force-response-1.0
This will be included in the configuration files distributed
with the next release.