In this issue
Apache Site: www.apache.org
Release: 1.2.6 (Released 24th March 1998)
Beta: 1.3b5 (Released 19th February 1998)
Apache 1.2.6 is the current stable release. Users of Apache
1.2.5 and earlier should upgrade to this version since it
fixes a number of bugs and potential security problems.
Patches for bugs in Apache 1.2.6 may be made available in the
apply_to_1.2.6 subdirectory of the patches
directory on the Apache site (this directory may not exist if
no patches are available). Some new features and other
unofficial patches are available in the 1.2
patches directory (these may not apply cleanly to 1.2.6).
For details of all previously reported bugs, see the Apache
bugs pages. Many common configuration questions are
answered in the Apache FAQ.
Development has slowed down to prepare for the release of
Apache 1.3. During the beta release cycle Apache is in a
"feature freeze" where no major new features will be added.
Better Symbol Hiding
The HIDE rule (see Apache
Week issue 105) has been removed. This was added to
prevent name-space collision between functions defined in
Apache and functions with the same name in third-party
libraries which may be linked with Apache via modules. This
rule added the prefix AP_ to all symbols, via a long list
of #define definitions.
This had the unfortunate effect of making the symbols in the
source code (which did not have the AP_ prefix) different from the
symbols seen by debuggers or profilers, making these
operations more difficult.
Instead symbols will be hidden now by adding a appropriate
prefix to the functions in the source code.
Writing Modules for Windows
In previous betas, the pre-processor macro IS_MODULE was defined when
compiling modules into DLL (shared object) files on Windows
systems. Now that support for shared objects is consistent
across Unix and Windows, this macro has been changed to the
same one used for compiling shared modules on Unix,
Module authors on Windows should ensure that their build
environment defines SHARED_MODULE when compiling a
module into a DLL file, so that the correct definitions are
used from the Apache header files. In the modules distributed
with Apache, this is defined in the MSVC++ project file.
Shared Module Support on SVR4
Apache's shared module support (the ability to load binary
modules when Apache is started or restarted) has been
extended to cover SVR4 based systems. This has required more
complexity within the Apache core code, but now provides the
same functionality for shared modules as provided on most
other Unix systems and on Windows.
As part of this change, it is now possible to build almost
all of the core code itself as a loadable module (not just
the core module). This is required to get shared modules
working on SVR4 systems.
Netscape's release of the source for Navigator has
raised the profile of source code. Recently O'Reilly and Associates
convened a press conference to promote source code
availablility, and Apache was represented by Brian
Behlendorf. Others present included representatives for sendmail, Linux, Perl and Python. Unlike many of
these projects, Apache does not have an indentifiable
"leader" or any single person who can make final decisions
(decisions are made a system of peer review and voting by
The meeting was intended to help present the case for source
code availablility to the media, but it also discussed the
terminology to use. "Free source" or "freeware" were not
popular because of the bad reputation of some free software
(and it does not imply availablity of source code). Instead
"open source" and "openware" were preferred. (Note that "Open
Source" is trademarked and is being promoted with a
particular definition which is intended to encompass most
requirements, see www.opensource.org).
WebReview (see below) has a guide
to the terms being used, and explains why this is
different from the Free
Software Foundation's GPL concept.
The conference was reported in many places, for example C|Net
wrote that Open
source gurus convene and Internet World report that
Open Minds Meet at Freeware Summit. WebReview online
magazine (which is linked to O'Reilly and Associates)
contains a lot of information in a special edition on
free or open source software, including an interview
with Brian Behlendorf and other representatives of source
code software projects.
PC Magazine online has produced an
extensive review of web servers, including Apache running
on Solaris and RedHat Linux. This review includes some
performance analysis, using the latest version of WebBench.
For access to CGI programs, Apache on Solaris had the best
performance across the range of loads. At lower load levels,
MS IIS was about the same as Apache, but it dropped when the
number of clients exceeded about 32. Apache on Linux had
slightly lower performance.
They also tested access to static (HTML) content. The total
size of the content files requested was about 63Mb, and in
servers which contained a built-in cache they ensured that
the entire content was cached, so this gave servers with
caches much better performance. So Apache's performance in
this test was slightly below average for the test. In
reality, if static HTML was a priority a cache (such as
Squid) or the experimental mod_mmap_static would be used, to
bring performance up to the level of other servers which
include a built-in cache. The CGI figures are probably a
better indication of the underlying performance of the server
since they eliminate effect of the cache.