1 2 The Apache HTTP Server Project 3 4 http://httpd.apache.org/ 5 6 February 2002 7 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. 18 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: 32 33 Brian Behlendorf Roy T. Fielding Rob Hartill 34 David Robinson Cliff Skolnick Randy Terbush 35 Robert S. Thau Andrew Wilson 36 37 with additional contributions from 38 39 Eric Hagberg Frank Peters Nicolas Pioch 40 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. 48 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) 58 in August. 59 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 63 December 1, 1995. 64 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. 67 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. 70 71 ============================================================================ 72 73 Current Apache Group in alphabetical order as of 2 April 2002: 74 75 Greg Ames IBM Corporation, Research Triangle Park, NC, USA 76 Aaron Bannert California 77 Brian Behlendorf Collab.Net, California 78 Ken Coar IBM Corporation, Research Triangle Park, NC, USA 79 Mark J. Cox Red Hat, UK 80 Lars Eilebrecht Freelance Consultant, Munich, Germany 81 Ralf S. Engelschall Cable & Wireless Deutschland, Munich, Germany 82 Justin Erenkrantz University of California, Irvine 83 Roy T. Fielding Day Software, California 84 Tony Finch Covalent Technologies, California 85 Dean Gaudet Transmeta Corporation, California 86 Dirk-Willem van Gulik Covalent Technologies, California 87 Brian Havard Australia 88 Ian Holsman CNET, California 89 Ben Hyde Gensym, Massachusetts 90 Jim Jagielski jaguNET Access Services, Maryland 91 Manoj Kasichainula Collab.Net, California 92 Alexei Kosut Stanford University, California 93 Martin Kraemer Munich, Germany 94 Ben Laurie Freelance Consultant, UK 95 Rasmus Lerdorf Yahoo!, California 96 Daniel Lopez Ridruejo Covalent Technologies, California 97 Doug MacEachern Covalent Technologies, California 98 Aram W. Mirzadeh CableVision, New York 99 Chuck Murcko The Topsail Group, Pennsylvania 100 Brian Pane CNET Networks, California 101 Sameer Parekh California 102 David Reid UK 103 William A. Rowe, Jr. Covalent, Illinois 104 Wilfredo Sanchez Apple Computer, California 105 Cliff Skolnick California 106 Marc Slemko Canada 107 Joshua Slive Canada 108 Greg Stein California 109 Bill Stoddard IBM Corporation, Research Triangle Park, NC 110 Sander Striker The Netherlands 111 Paul Sutton Seattle 112 Randy Terbush Covalent Technologies, California 113 Jeff Trawick IBM Corporation, Research Triangle Park, NC 114 Cliff Woolley University of Virginia 115 116 Apache Emeritus (old group members now off doing other things) 117 118 Ryan Bloom California 119 Rob Hartill Internet Movie DB, UK 120 David Robinson Cambridge University, UK 121 Robert S. Thau MIT, Massachusetts 122 Andrew Wilson Freelance Consultant, UK 123 124 Other major contributors 125 126 Howard Fear (mod_include), Florent Guillaume (language negotiation), 127 Koen Holtman (rewrite of mod_negotiation), 128 Kevin Hughes (creator of all those nifty icons), 129 Brandon Long and Beth Frank (NCSA Server Development Team, post-1.3), 130 Ambarish Malpani (Beginning of the NT port), 131 Rob McCool (original author of the NCSA httpd 1.3), 132 Paul Richards (convinced the group to use remote CVS after 1.0), 133 Garey Smiley (OS/2 port), Henry Spencer (author of the regex library). 134 135 Many 3rd-party modules, frequently used and recommended, are also 136 freely-available and linked from the related projects page: 137 <http://modules.apache.org/>, and their authors frequently 138 contribute ideas, patches, and testing. 139 140 Hundreds of people have made individual contributions to the Apache 141 project. Patch contributors are listed in the CHANGES file. 142 Frequent contributors have included Petr Lampa, Tom Tromey, James H. 143 Cloos Jr., Ed Korthof, Nathan Neulinger, Jason S. Clary, Jason A. Dour, 144 Michael Douglass, Tony Sanders, Brian Tao, Michael Smith, Adam Sussman, 145 Nathan Schrenk, Matthew Gray, and John Heidemann. 146 147 ============================================================================ 148 149 How to become involved in the Apache project 150 151 There are several levels of contributing. If you just want to send 152 in an occasional suggestion/fix, then you can just use the bug reporting 153 form at <http://httpd.apache.org/bug_report.html>. You can also subscribe 154 to the announcements mailing list (announce-subscribe (a] httpd.apache.org) which 155 we use to broadcast information about new releases, bugfixes, and upcoming 156 events. There's a lot of information about the development process (much of 157 it in serious need of updating) to be found at <http://httpd.apache.org/dev/>. 158 159 If you'd like to become an active contributor to the Apache project (the 160 group of volunteers who vote on changes to the distributed server), then 161 you need to start by subscribing to the dev (a] httpd.apache.org mailing list. 162 One warning though: traffic is high, 1000 to 1500 messages/month. 163 To subscribe to the list, send an email to dev-subscribe (a] httpd.apache.org. 164 We recommend reading the list for a while before trying to jump in to 165 development. 166 167 NOTE: The developer mailing list (dev (a] httpd.apache.org) is not 168 a user support forum; it is for people actively working on development 169 of the server code and documentation, and for planning future 170 directions. If you have user/configuration questions, send them 171 to users list <http://httpd.apache.org/userslist> or to the USENET 172 newsgroup "comp.infosystems.www.servers.unix".or for windows users, 173 the newsgroup "comp.infosystems.www.servers.ms-windows". 174 175 There is a core group of contributors (informally called the "core") 176 which was formed from the project founders and is augmented from time 177 to time when core members nominate outstanding contributors and the 178 rest of the core members agree. The core group focus is more on 179 "business" issues and limited-circulation things like security problems 180 than on mainstream code development. The term "The Apache Group" 181 technically refers to this core of project contributors. 182 183 The Apache project is a meritocracy -- the more work you have done, the more 184 you are allowed to do. The group founders set the original rules, but 185 they can be changed by vote of the active members. There is a group 186 of people who have logins on our server (apache.org) and access to the 187 CVS repository. Everyone has access to the CVS snapshots. Changes to 188 the code are proposed on the mailing list and usually voted on by active 189 members -- three +1 (yes votes) and no -1 (no votes, or vetoes) are needed 190 to commit a code change during a release cycle; docs are usually committed 191 first and then changed as needed, with conflicts resolved by majority vote. 192 193 Our primary method of communication is our mailing list. Approximately 40 194 messages a day flow over the list, and are typically very conversational in 195 tone. We discuss new features to add, bug fixes, user problems, developments 196 in the web server community, release dates, etc. The actual code development 197 takes place on the developers' local machines, with proposed changes 198 communicated using a patch (output of a unified "diff -u oldfile newfile" 199 command), and committed to the source repository by one of the core 200 developers using remote CVS. Anyone on the mailing list can vote on a 201 particular issue, but we only count those made by active members or people 202 who are known to be experts on that part of the server. Vetoes must be 203 accompanied by a convincing explanation. 204 205 New members of the Apache Group are added when a frequent contributor is 206 nominated by one member and unanimously approved by the voting members. 207 In most cases, this "new" member has been actively contributing to the 208 group's work for over six months, so it's usually an easy decision. 209 210 The above describes our past and current (as of July 2000) guidelines, 211 which will probably change over time as the membership of the group 212 changes and our development/coordination tools improve. 213 214 ============================================================================ 215 216 The Apache Software Foundation (www.apache.org) 217 218 The Apache Software Foundation exists to provide organizational, legal, 219 and financial support for the Apache open-source software projects. 220 Founded in June 1999 by the Apache Group, the Foundation has been 221 incorporated as a membership-based, not-for-profit corporation in order 222 to ensure that the Apache projects continue to exist beyond the participation 223 of individual volunteers, to enable contributions of intellectual property 224 and funds on a sound basis, and to provide a vehicle for limiting legal 225 exposure while participating in open-source software projects. 226 227 You are invited to participate in The Apache Software Foundation. We welcome 228 contributions in many forms. Our membership consists of those individuals 229 who have demonstrated a commitment to collaborative open-source software 230 development through sustained participation and contributions within the 231 Foundation's projects. Many people and companies have contributed towards 232 the success of the Apache projects. 233 234 ============================================================================ 235 236 Why Apache Is Free 237 238 Apache exists to provide a robust and commercial-grade reference 239 implementation of the HTTP protocol. It must remain a platform upon which 240 individuals and institutions can build reliable systems, both for 241 experimental purposes and for mission-critical purposes. We believe the 242 tools of online publishing should be in the hands of everyone, and 243 software companies should make their money providing value-added services 244 such as specialized modules and support, amongst other things. We realize 245 that it is often seen as an economic advantage for one company to "own" a 246 market - in the software industry that means to control tightly a 247 particular conduit such that all others must pay. This is typically done 248 by "owning" the protocols through which companies conduct business, at the 249 expense of all those other companies. To the extent that the protocols of 250 the World Wide Web remain "unowned" by a single company, the Web will 251 remain a level playing field for companies large and small. Thus, 252 "ownership" of the protocol must be prevented, and the existence of a 253 robust reference implementation of the protocol, available absolutely for 254 free to all companies, is a tremendously good thing. 255 256 Furthermore, Apache is an organic entity; those who benefit from it 257 by using it often contribute back to it by providing feature enhancements, 258 bug fixes, and support for others in public newsgroups. The amount of 259 effort expended by any particular individual is usually fairly light, but 260 the resulting product is made very strong. This kind of community can 261 only happen with freeware -- when someone pays for software, they usually 262 aren't willing to fix its bugs. One can argue, then, that Apache's 263 strength comes from the fact that it's free, and if it were made "not 264 free" it would suffer tremendously, even if that money were spent on a 265 real development team. 266 267 We want to see Apache used very widely -- by large companies, small 268 companies, research institutions, schools, individuals, in the intranet 269 environment, everywhere -- even though this may mean that companies who 270 could afford commercial software, and would pay for it without blinking, 271 might get a "free ride" by using Apache. We would even be happy if some 272 commercial software companies completely dropped their own HTTP server 273 development plans and used Apache as a base, with the proper attributions 274 as described in the LICENSE file. 275 276 Thanks for using Apache! 277 278