2 The Apache HTTP Server Project
4 http://www.apache.org/httpd
8 The Apache Project is a collaborative software development effort aimed
9 at creating a robust, commercial-grade, featureful, and freely-available
10 source code implementation of an HTTP (Web) server. The project is
11 jointly managed by a group of volunteers located around the world, using
12 the Internet and the Web to communicate, plan, and develop the server and
13 its related documentation. These volunteers are known as the Apache Group.
14 In addition, hundreds of users have contributed ideas, code, and
15 documentation to the project. This file is intended to briefly describe
16 the history of the Apache Group, recognize the many contributors, and
17 explain how you can join the fun too.
19 In February of 1995, the most popular server software on the Web was the
20 public domain HTTP daemon developed by Rob McCool at the National Center
21 for Supercomputing Applications, University of Illinois, Urbana-Champaign.
22 However, development of that httpd had stalled after Rob left NCSA in
23 mid-1994, and many webmasters had developed their own extensions and bug
24 fixes that were in need of a common distribution. A small group of these
25 webmasters, contacted via private e-mail, gathered together for the purpose
26 of coordinating their changes (in the form of "patches"). Brian Behlendorf
27 and Cliff Skolnick put together a mailing list, shared information space,
28 and logins for the core developers on a machine in the California Bay Area,
29 with bandwidth and diskspace donated by HotWired and Organic Online.
30 By the end of February, eight core contributors formed the foundation
31 of the original Apache Group:
33 Brian Behlendorf Roy T. Fielding Rob Hartill
34 David Robinson Cliff Skolnick Randy Terbush
35 Robert S. Thau Andrew Wilson
37 with additional contributions from
39 Eric Hagberg Frank Peters Nicolas Pioch
41 Using NCSA httpd 1.3 as a base, we added all of the published bug fixes
42 and worthwhile enhancements we could find, tested the result on our own
43 servers, and made the first official public release (0.6.2) of the Apache
44 server in April 1995. By coincidence, NCSA restarted their own development
45 during the same period, and Brandon Long and Beth Frank of the NCSA Server
46 Development Team joined the list in March as honorary members so that the
47 two projects could share ideas and fixes.
49 The early Apache server was a big hit, but we all knew that the codebase
50 needed a general overhaul and redesign. During May-June 1995, while
51 Rob Hartill and the rest of the group focused on implementing new features
52 for 0.7.x (like pre-forked child processes) and supporting the rapidly growing
53 Apache user community, Robert Thau designed a new server architecture
54 (code-named Shambhala) which included a modular structure and API for better
55 extensibility, pool-based memory allocation, and an adaptive pre-forking
56 process model. The group switched to this new server base in July and added
57 the features from 0.7.x, resulting in Apache 0.8.8 (and its brethren)
60 After extensive beta testing, many ports to obscure platforms, a new set
61 of documentation (by David Robinson), and the addition of many features
62 in the form of our standard modules, Apache 1.0 was released on
65 Less than a year after the group was formed, the Apache server passed
66 NCSA's httpd as the #1 server on the Internet.
68 The survey by Netcraft (http://www.netcraft.com/survey/) shows that Apache
69 is today more widely used than all other web servers combined.
71 ============================================================================
73 Current Apache Group in alphabetical order as of 27 July 2000:
75 Brian Behlendorf Collab.Net, California
76 Ryan Bloom Covalent Technologies, California
77 Ken Coar IBM Corporation, Research Triangle Park, NC, USA
78 Mark J. Cox Red Hat, England
79 Lars Eilebrecht CyberSolutions, Munich, Germany
80 Ralf S. Engelschall Munich, Germany.
81 Roy T. Fielding eBuilt, California
82 Tony Finch Covalent Technologies, California
83 Dean Gaudet Transmeta Corporation, California
84 Dirk-Willem van Gulik Covalent Technologies, California
85 Brian Havard Australia
86 Ben Hyde Gensym, Massachusetts
87 Jim Jagielski jaguNET Access Services, Maryland
88 Manoj Kasichainula Collab.Net, California
89 Alexei Kosut Stanford University, California
90 Martin Kraemer Munich, Germany
91 Ben Laurie Freelance Consultant, UK
92 Rasmus Lerdorf Linuxcare, California
93 Daniel Lopez Ridruejo Covalent Technologies, California
94 Doug MacEachern Covalent Technologies, California
95 Aram W. Mirzadeh CableVision, New York
96 Chuck Murcko The Topsail Group, Pennsylvania
97 Sameer Parekh California
99 William A. Rowe, Jr. Covalent, Illinois
100 Wilfredo Sanchez Apple Computer, California
101 Cliff Skolnick California
103 Greg Stein California
104 Bill Stoddard IBM Corporation, Research Triangle Park, NC
106 Randy Terbush Covalent Technologies, California
108 Apache Emeritus (old group members now off doing other things)
110 Rob Hartill Internet Movie DB, UK
111 David Robinson Cambridge University, UK
112 Robert S. Thau MIT, Massachusetts
113 Andrew Wilson Freelance Consultant, UK
115 Other major contributors
117 Howard Fear (mod_include), Florent Guillaume (language negotiation),
118 Koen Holtman (rewrite of mod_negotiation),
119 Kevin Hughes (creator of all those nifty icons),
120 Brandon Long and Beth Frank (NCSA Server Development Team, post-1.3),
121 Ambarish Malpani (Beginning of the NT port),
122 Rob McCool (original author of the NCSA httpd 1.3),
123 Paul Richards (convinced the group to use remote CVS after 1.0),
124 Garey Smiley (OS/2 port), Henry Spencer (author of the regex library).
126 Many 3rd-party modules, frequently used and recommended, are also
127 freely-available and linked from the related projects page:
128 <http://modules.apache.org/>, and their authors frequently
129 contribute ideas, patches, and testing.
131 Hundreds of people have made individual contributions to the Apache
132 project. Patch contributors are listed in the src/CHANGES file.
133 Frequent contributors have included Petr Lampa, Tom Tromey, James H.
134 Cloos Jr., Ed Korthof, Nathan Neulinger, Jason S. Clary, Jason A. Dour,
135 Michael Douglass, Tony Sanders, Brian Tao, Michael Smith, Adam Sussman,
136 Nathan Schrenk, Matthew Gray, and John Heidemann.
138 ============================================================================
140 How to become involved in the Apache project
142 There are several levels of contributing. If you just want to send
143 in an occasional suggestion/fix, then you can just use the bug reporting
144 form at <http://www.apache.org/bug_report.html>. You can also subscribe
145 to the announcements mailing list (apache-announce@apache.org) which we
146 use to broadcast information about new releases, bugfixes, and upcoming
147 events. There's a lot of information about the development process (much
148 of it in serious need of updating) to be found at <http://dev.apache.org/>.
150 If you'd like to become an active contributor to the Apache project (the
151 group of volunteers who vote on changes to the distributed server), then
152 you need to start by subscribing to the new-httpd@apache.org mailing list.
153 One warning though: traffic is high, 1000 to 1500 messages/month.
154 To subscribe to the list, send "subscribe new-httpd" in the body of
155 a message to <majordomo@apache.org>. We recommend reading the list for
156 a while before trying to jump in to development.
158 NOTE: The developer mailing list (new-httpd@apache.org) is not
159 a user support forum; it is for people actively working on development
160 of the server code and documentation, and for planning future
161 directions. If you have user/configuration questions, send them
162 to the USENET newsgroup "comp.infosystems.www.servers.unix", or for
163 Windows users, "comp.infosystems.www.servers.ms-windows".
165 There is a core group of contributors (informally called the "core")
166 which was formed from the project founders and is augmented from time
167 to time when core members nominate outstanding contributors and the
168 rest of the core members agree. The core group focus is more on
169 "business" issues and limited-circulation things like security problems
170 than on mainstream code development. The term "The Apache Group"
171 technically refers to this core of project contributors.
173 The Apache project is a meritocracy -- the more work you have done, the more
174 you are allowed to do. The group founders set the original rules, but
175 they can be changed by vote of the active members. There is a group
176 of people who have logins on our server (apache.org) and access to the
177 CVS repository. Everyone has access to the CVS snapshots. Changes to
178 the code are proposed on the mailing list and usually voted on by active
179 members -- three +1 (yes votes) and no -1 (no votes, or vetoes) are needed
180 to commit a code change during a release cycle; docs are usually committed
181 first and then changed as needed, with conflicts resolved by majority vote.
183 Our primary method of communication is our mailing list. Approximately 40
184 messages a day flow over the list, and are typically very conversational in
185 tone. We discuss new features to add, bug fixes, user problems, developments
186 in the web server community, release dates, etc. The actual code development
187 takes place on the developers' local machines, with proposed changes
188 communicated using a patch (output of a unified "diff -u oldfile newfile"
189 command), and committed to the source repository by one of the core
190 developers using remote CVS. Anyone on the mailing list can vote on a
191 particular issue, but we only count those made by active members or people
192 who are known to be experts on that part of the server. Vetoes must be
193 accompanied by a convincing explanation.
195 New members of the Apache Group are added when a frequent contributor is
196 nominated by one member and unanimously approved by the voting members.
197 In most cases, this "new" member has been actively contributing to the
198 group's work for over six months, so it's usually an easy decision.
200 The above describes our past and current (as of July 2000) guidelines,
201 which will probably change over time as the membership of the group
202 changes and our development/coordination tools improve.
204 ============================================================================
206 The Apache Software Foundation (www.apache.org)
208 The Apache Software Foundation exists to provide organizational, legal,
209 and financial support for the Apache open-source software projects.
210 Founded in June 1999 by the Apache Group, the Foundation has been
211 incorporated as a membership-based, not-for-profit corporation in order
212 to ensure that the Apache projects continue to exist beyond the participation
213 of individual volunteers, to enable contributions of intellectual property
214 and funds on a sound basis, and to provide a vehicle for limiting legal
215 exposure while participating in open-source software projects.
217 You are invited to participate in The Apache Software Foundation. We welcome
218 contributions in many forms. Our membership consists of those individuals
219 who have demonstrated a commitment to collaborative open-source software
220 development through sustained participation and contributions within the
221 Foundation's projects. Many people and companies have contributed towards
222 the success of the Apache projects.
224 ============================================================================
228 Apache exists to provide a robust and commercial-grade reference
229 implementation of the HTTP protocol. It must remain a platform upon which
230 individuals and institutions can build reliable systems, both for
231 experimental purposes and for mission-critical purposes. We believe the
232 tools of online publishing should be in the hands of everyone, and
233 software companies should make their money providing value-added services
234 such as specialized modules and support, amongst other things. We realize
235 that it is often seen as an economic advantage for one company to "own" a
236 market - in the software industry that means to control tightly a
237 particular conduit such that all others must pay. This is typically done
238 by "owning" the protocols through which companies conduct business, at the
239 expense of all those other companies. To the extent that the protocols of
240 the World Wide Web remain "unowned" by a single company, the Web will
241 remain a level playing field for companies large and small. Thus,
242 "ownership" of the protocol must be prevented, and the existence of a
243 robust reference implementation of the protocol, available absolutely for
244 free to all companies, is a tremendously good thing.
246 Furthermore, Apache is an organic entity; those who benefit from it
247 by using it often contribute back to it by providing feature enhancements,
248 bug fixes, and support for others in public newsgroups. The amount of
249 effort expended by any particular individual is usually fairly light, but
250 the resulting product is made very strong. This kind of community can
251 only happen with freeware -- when someone pays for software, they usually
252 aren't willing to fix its bugs. One can argue, then, that Apache's
253 strength comes from the fact that it's free, and if it were made "not
254 free" it would suffer tremendously, even if that money were spent on a
255 real development team.
257 We want to see Apache used very widely -- by large companies, small
258 companies, research institutions, schools, individuals, in the intranet
259 environment, everywhere -- even though this may mean that companies who
260 could afford commercial software, and would pay for it without blinking,
261 might get a "free ride" by using Apache. We would even be happy if some
262 commercial software companies completely dropped their own HTTP server
263 development plans and used Apache as a base, with the proper attributions
264 as described in the LICENSE file.
266 Thanks for using Apache!