After many years and several betas the Apache group were proud to announce
the general availability of Apache 2.0 on the 6th April 2002. The general
availability release was based on Apache 2.0.35.
The Apache group started discussing plans for Apache 2.0 as far back as the
summer of 1996, just after the release of Apache 1.1.1. In July 1996,
Apache Week issue 24, covered the first discussions of multithreading. One month
later, in August 1996,
Apache Week
issue 128 looked at how useful filtering would be, and some possible
ways of implementing it. Filtering was finally added to Apache 2.0 four
years later, in August 2000.
In February 1997 the Apache group looked at plans for the server after
version 1.2 was released. The plans included a considerable rewrite to
include support for multithreading, filters, and OS abstractions to
allow for versions of Apache on Windows NT and other systems.
Apache Week issue 54
covered these plans and predicted that Apache 2.0 is "likely to take some time"
May 1997 saw the group decide that Windows releases would be outside of
the main Apache development effort. The aim for 2.0 was
to ensure that the same code is used for all
operating systems with a set of platform-specific routines to handle
anything that varies between operating systems.
(Apache Week issue 65) .
In June, Apache 1.2 had been finally released and work started on the
requirements for the redesign of the core Apache code.
Apache Week issue 69
discussed the need for additional processing phases, and the plans for
a graphical configuration manager.
All the plans for Apache 2.0 were summarised in February 1998,
Apache Week issue 102.
The major changes being discussed were multithreading, filtering,
new process models, better system configuration, API changes, and
changes to the configuration syntax. Some thought was also given to
rewriting Apache in C++, but this idea was later dropped.
In June 1998 the Apache core developers met for the first time to
discuss the organisational structure of the Apache group as well
as the plans for Apache 2.0.
Apache Week issue 121
covered this meeting.
Over a year later, in September 1999, we revisited Apache 2.0 development
in a special feature,
"Apache 2.0 preview".
At this stage a beta was expected in late 1999 or early 2000.
In January 2000,
Apache Week issue 181,
there was discussion within the group about how to deal with feature
additions to the stable Apache 1.3. It was decided that all attention should
be placed on 2.0 development and that no major new features would be
accepted into the Apache 1.3 tree.
The first Apache 2.0 alpha was launched at the final session of the ApacheCon
2000 conference in March 2000. A number of ASF members on stage updated the
website and copied the distribution files into the correct locations
live of in front of the audience.
At ApacheCon Europe in November 2000, a meeting took place between Ben
Laurie (the author of Apache-SSL), Ralf Engelschall (the author of
mod_ssl), Mark Cox (Red Hat), and Randy Terbush (Covalent). The meeting
was held to decide the fate of SSL support for Apache 2.0, aiming to
avoid the current situation of parallel module development for Apache
1.3.
The first Apache 2.0 beta was launched at the ApacheCon 2001 conference in
March 2001, one year after the first alpha. Between April and November
a large amount of internal code changes have taken place, with a few
alpha-quality releases. The second Apache 2.0 beta was released in
mid November 2001
In this section we highlight some of the news stories on the web that mentioned
Apache 2.
- May 2001: CNET reviews
Apache 2.0.16 Beta and suggests that administrators who are interested
to upgrade to Apache 2.0 prepares for the stable release by installing the
beta on a development machine. Then test the new features and benchmark
its performance in order to speed up the eventual upgrade process.
- January 2001:
Ryan Bloom discusses why the Apache
2.0 beta was delayed
- October 2000:
Apache 2.0 was still in alpha release when an eagle-eyed subscriber
in Apache Week issue 219 noticed
that the high-profile Napster web site was running Apache 2.0a6.
- August 2000:
C|Net reported on Apache 2.0 in "Apache Web software on verge of major revision". The article interviews a few of the Apache
developers and highlights some of the advantages that version 2.0 will bring. They quote that "The final version should be out by the end of the year" (2000)
- July 2000:
In the same week two projects not related to the Apache group announced
that they would be integrated into Apache 2.0, even though this was not
planned and didn't happen. Apache Week issue 206
looks at the claims from the TUX web server and BXXP protocol projects.
In this section we highlight some of the articles on the web that are of
interest to Apache 2 users.
- In Ryan Bloom's swan song for the Apache 2.0 Basics series, he talks about
one
of the least publicised new features in Apache 2.0 which is allowing
one module to call into another module to execute an operation. In Apache
1.3, for two modules to execute the same operation, the feature has to
be implemented in both of the modules, making synchronisation of changes a
tedious task. He uses the mod_include and
mod_cgi modules to illustrate his points.
- O'Reilly ONLamp.com brings you the latest information about filters
for Apache 2.0 in Ryan Bloom's column. This article is just an
introduction to the subject, covering some of the basic concepts of
filtered I/O which is the ability for one module to modify the output of
an earlier module, listing three standard filters included in the basic
Apache distribution, and explaining what filter types are. According to
Ryan, developers have improved the interface over the past few releases so
that the complex task of writing filters becomes easier.
- In "Apache
2.0: The Internals of the New, Improved A PatCHy", Ibrahim
F. Haddad gives an overview of Apache 2.0 and shares with us the results
of his Apache 2.08 performance tests. In conclusion, he highly recommends
that current Apache 1.3.x users upgrade to Apache 2.0 once the release
version is available.
- Ryan Bloom kicks off a new series of columns about Apache 2.0 for O'Reilly
Network readers with his first column - "Installing
Apache 2.0". This piece proves to be merely a rehash of his previous
Apache 2.0 articles except for a mention of mod_tls.
- eWEEK Labs
tests Apache 2.0.16 Beta and provides a brief review about its
features and shortcomings.
- In CNet Builder.com, Ryan Bloom explains how Apache
2.0 is more than a web server as it has the potential to serve any
protocol. He reveals the benefits of using a single server for
multiple protocols and the way to implement it using Apache 2.0.
- In "Filtering
I/O in Apache 2.0", Ryan Bloom explains how filtering in Apache 2.0 works, how modules can make
use of it, and the basic concepts for writing filters.
- Ryan Bloom
investigates writing
an input filter for Apache 2.0 and shows the power of input filters
with mod_apachecon as an example.
-
Ryan Bloom tells C|Net Builder.com readers
how to download,
build, and install the Apache 2.0 alpha releases.
-
Apache Today gives a concise guide on how to
setup and
compile Apache 2.0.
-
Apache Today explains some of the new technology that is inside
the fourth alpha of Apache 2.0. "Looking
at Apache 2.0 alpha 4" takes a detailed look at reliable piped logging and the issues of running CGI scripts from a
threaded web server.
-
LinuxPlanet have a feature about Apache,
"Using the Apache CVS Repository". The article explains how the
Apache developers use a master code repository for the work on Apache 1.3 and 2.0.
Anyone interested in keeping up to date with the cutting edge
developments of Apache can use the described methods to maintain their
own copy of the source tree, whilst easily keeping with the changes
being made by the Apache developers.