| |
| The Apache HTTP Server Project |
| |
| http://httpd.apache.org/ |
| |
| February 2002 |
| |
| The Apache Project is a collaborative software development effort aimed |
| at creating a robust, commercial-grade, featureful, and freely-available |
| source code implementation of an HTTP (Web) server. The project is |
| jointly managed by a group of volunteers located around the world, using |
| the Internet and the Web to communicate, plan, and develop the server and |
| its related documentation. These volunteers are known as the Apache Group. |
| In addition, hundreds of users have contributed ideas, code, and |
| documentation to the project. This file is intended to briefly describe |
| the history of the Apache Group, recognize the many contributors, and |
| explain how you can join the fun too. |
| |
| In February of 1995, the most popular server software on the Web was the |
| public domain HTTP daemon developed by Rob McCool at the National Center |
| for Supercomputing Applications, University of Illinois, Urbana-Champaign. |
| However, development of that httpd had stalled after Rob left NCSA in |
| mid-1994, and many webmasters had developed their own extensions and bug |
| fixes that were in need of a common distribution. A small group of these |
| webmasters, contacted via private e-mail, gathered together for the purpose |
| of coordinating their changes (in the form of "patches"). Brian Behlendorf |
| and Cliff Skolnick put together a mailing list, shared information space, |
| and logins for the core developers on a machine in the California Bay Area, |
| with bandwidth and diskspace donated by HotWired and Organic Online. |
| By the end of February, eight core contributors formed the foundation |
| of the original Apache Group: |
| |
| Brian Behlendorf Roy T. Fielding Rob Hartill |
| David Robinson Cliff Skolnick Randy Terbush |
| Robert S. Thau Andrew Wilson |
| |
| with additional contributions from |
| |
| Eric Hagberg Frank Peters Nicolas Pioch |
| |
| Using NCSA httpd 1.3 as a base, we added all of the published bug fixes |
| and worthwhile enhancements we could find, tested the result on our own |
| servers, and made the first official public release (0.6.2) of the Apache |
| server in April 1995. By coincidence, NCSA restarted their own development |
| during the same period, and Brandon Long and Beth Frank of the NCSA Server |
| Development Team joined the list in March as honorary members so that the |
| two projects could share ideas and fixes. |
| |
| The early Apache server was a big hit, but we all knew that the codebase |
| needed a general overhaul and redesign. During May-June 1995, while |
| Rob Hartill and the rest of the group focused on implementing new features |
| for 0.7.x (like pre-forked child processes) and supporting the rapidly growing |
| Apache user community, Robert Thau designed a new server architecture |
| (code-named Shambhala) which included a modular structure and API for better |
| extensibility, pool-based memory allocation, and an adaptive pre-forking |
| process model. The group switched to this new server base in July and added |
| the features from 0.7.x, resulting in Apache 0.8.8 (and its brethren) |
| in August. |
| |
| After extensive beta testing, many ports to obscure platforms, a new set |
| of documentation (by David Robinson), and the addition of many features |
| in the form of our standard modules, Apache 1.0 was released on |
| December 1, 1995. |
| |
| Less than a year after the group was formed, the Apache server passed |
| NCSA's httpd as the #1 server on the Internet. |
| |
| The survey by Netcraft (http://www.netcraft.com/survey/) shows that Apache |
| is today more widely used than all other web servers combined. |
| |
| ============================================================================ |
| |
| Current Apache Group in alphabetical order as of 2 April 2002: |
| |
| Greg Ames IBM Corporation, Research Triangle Park, NC, USA |
| Aaron Bannert California |
| Brian Behlendorf Collab.Net, California |
| Ken Coar IBM Corporation, Research Triangle Park, NC, USA |
| Mark J. Cox Red Hat, UK |
| Lars Eilebrecht Freelance Consultant, Munich, Germany |
| Ralf S. Engelschall Cable & Wireless Deutschland, Munich, Germany |
| Justin Erenkrantz University of California, Irvine |
| Roy T. Fielding Day Software, California |
| Tony Finch Covalent Technologies, California |
| Dean Gaudet Transmeta Corporation, California |
| Dirk-Willem van Gulik Covalent Technologies, California |
| Brian Havard Australia |
| Ian Holsman CNET, California |
| Ben Hyde Gensym, Massachusetts |
| Jim Jagielski jaguNET Access Services, Maryland |
| Manoj Kasichainula Collab.Net, California |
| Alexei Kosut Stanford University, California |
| Martin Kraemer Munich, Germany |
| Ben Laurie Freelance Consultant, UK |
| Rasmus Lerdorf Yahoo!, California |
| Daniel Lopez Ridruejo Covalent Technologies, California |
| Doug MacEachern Covalent Technologies, California |
| Aram W. Mirzadeh CableVision, New York |
| Chuck Murcko The Topsail Group, Pennsylvania |
| Brian Pane CNET Networks, California |
| Sameer Parekh California |
| David Reid UK |
| William A. Rowe, Jr. Covalent, Illinois |
| Wilfredo Sanchez Apple Computer, California |
| Cliff Skolnick California |
| Marc Slemko Canada |
| Joshua Slive Canada |
| Greg Stein California |
| Bill Stoddard IBM Corporation, Research Triangle Park, NC |
| Sander Striker The Netherlands |
| Paul Sutton Seattle |
| Randy Terbush Covalent Technologies, California |
| Jeff Trawick IBM Corporation, Research Triangle Park, NC |
| Cliff Woolley University of Virginia |
| |
| Apache Emeritus (old group members now off doing other things) |
| |
| Ryan Bloom California |
| Rob Hartill Internet Movie DB, UK |
| David Robinson Cambridge University, UK |
| Robert S. Thau MIT, Massachusetts |
| Andrew Wilson Freelance Consultant, UK |
| |
| Other major contributors |
| |
| Howard Fear (mod_include), Florent Guillaume (language negotiation), |
| Koen Holtman (rewrite of mod_negotiation), |
| Kevin Hughes (creator of all those nifty icons), |
| Brandon Long and Beth Frank (NCSA Server Development Team, post-1.3), |
| Ambarish Malpani (Beginning of the NT port), |
| Rob McCool (original author of the NCSA httpd 1.3), |
| Paul Richards (convinced the group to use remote CVS after 1.0), |
| Garey Smiley (OS/2 port), Henry Spencer (author of the regex library). |
| |
| Many 3rd-party modules, frequently used and recommended, are also |
| freely-available and linked from the related projects page: |
| <http://modules.apache.org/>, and their authors frequently |
| contribute ideas, patches, and testing. |
| |
| Hundreds of people have made individual contributions to the Apache |
| project. Patch contributors are listed in the CHANGES file. |
| Frequent contributors have included Petr Lampa, Tom Tromey, James H. |
| Cloos Jr., Ed Korthof, Nathan Neulinger, Jason S. Clary, Jason A. Dour, |
| Michael Douglass, Tony Sanders, Brian Tao, Michael Smith, Adam Sussman, |
| Nathan Schrenk, Matthew Gray, and John Heidemann. |
| |
| ============================================================================ |
| |
| How to become involved in the Apache project |
| |
| There are several levels of contributing. If you just want to send |
| in an occasional suggestion/fix, then you can just use the bug reporting |
| form at <http://httpd.apache.org/bug_report.html>. You can also subscribe |
| to the announcements mailing list (announce-subscribe@httpd.apache.org) which |
| we use to broadcast information about new releases, bugfixes, and upcoming |
| events. There's a lot of information about the development process (much of |
| it in serious need of updating) to be found at <http://httpd.apache.org/dev/>. |
| |
| If you'd like to become an active contributor to the Apache project (the |
| group of volunteers who vote on changes to the distributed server), then |
| you need to start by subscribing to the dev@httpd.apache.org mailing list. |
| One warning though: traffic is high, 1000 to 1500 messages/month. |
| To subscribe to the list, send an email to dev-subscribe@httpd.apache.org. |
| We recommend reading the list for a while before trying to jump in to |
| development. |
| |
| NOTE: The developer mailing list (dev@httpd.apache.org) is not |
| a user support forum; it is for people actively working on development |
| of the server code and documentation, and for planning future |
| directions. If you have user/configuration questions, send them |
| to users list <http://httpd.apache.org/userslist> or to the USENET |
| newsgroup "comp.infosystems.www.servers.unix".or for windows users, |
| the newsgroup "comp.infosystems.www.servers.ms-windows". |
| |
| There is a core group of contributors (informally called the "core") |
| which was formed from the project founders and is augmented from time |
| to time when core members nominate outstanding contributors and the |
| rest of the core members agree. The core group focus is more on |
| "business" issues and limited-circulation things like security problems |
| than on mainstream code development. The term "The Apache Group" |
| technically refers to this core of project contributors. |
| |
| The Apache project is a meritocracy -- the more work you have done, the more |
| you are allowed to do. The group founders set the original rules, but |
| they can be changed by vote of the active members. There is a group |
| of people who have logins on our server (apache.org) and access to the |
| CVS repository. Everyone has access to the CVS snapshots. Changes to |
| the code are proposed on the mailing list and usually voted on by active |
| members -- three +1 (yes votes) and no -1 (no votes, or vetoes) are needed |
| to commit a code change during a release cycle; docs are usually committed |
| first and then changed as needed, with conflicts resolved by majority vote. |
| |
| Our primary method of communication is our mailing list. Approximately 40 |
| messages a day flow over the list, and are typically very conversational in |
| tone. We discuss new features to add, bug fixes, user problems, developments |
| in the web server community, release dates, etc. The actual code development |
| takes place on the developers' local machines, with proposed changes |
| communicated using a patch (output of a unified "diff -u oldfile newfile" |
| command), and committed to the source repository by one of the core |
| developers using remote CVS. Anyone on the mailing list can vote on a |
| particular issue, but we only count those made by active members or people |
| who are known to be experts on that part of the server. Vetoes must be |
| accompanied by a convincing explanation. |
| |
| New members of the Apache Group are added when a frequent contributor is |
| nominated by one member and unanimously approved by the voting members. |
| In most cases, this "new" member has been actively contributing to the |
| group's work for over six months, so it's usually an easy decision. |
| |
| The above describes our past and current (as of July 2000) guidelines, |
| which will probably change over time as the membership of the group |
| changes and our development/coordination tools improve. |
| |
| ============================================================================ |
| |
| The Apache Software Foundation (www.apache.org) |
| |
| The Apache Software Foundation exists to provide organizational, legal, |
| and financial support for the Apache open-source software projects. |
| Founded in June 1999 by the Apache Group, the Foundation has been |
| incorporated as a membership-based, not-for-profit corporation in order |
| to ensure that the Apache projects continue to exist beyond the participation |
| of individual volunteers, to enable contributions of intellectual property |
| and funds on a sound basis, and to provide a vehicle for limiting legal |
| exposure while participating in open-source software projects. |
| |
| You are invited to participate in The Apache Software Foundation. We welcome |
| contributions in many forms. Our membership consists of those individuals |
| who have demonstrated a commitment to collaborative open-source software |
| development through sustained participation and contributions within the |
| Foundation's projects. Many people and companies have contributed towards |
| the success of the Apache projects. |
| |
| ============================================================================ |
| |
| Why Apache Is Free |
| |
| Apache exists to provide a robust and commercial-grade reference |
| implementation of the HTTP protocol. It must remain a platform upon which |
| individuals and institutions can build reliable systems, both for |
| experimental purposes and for mission-critical purposes. We believe the |
| tools of online publishing should be in the hands of everyone, and |
| software companies should make their money providing value-added services |
| such as specialized modules and support, amongst other things. We realize |
| that it is often seen as an economic advantage for one company to "own" a |
| market - in the software industry that means to control tightly a |
| particular conduit such that all others must pay. This is typically done |
| by "owning" the protocols through which companies conduct business, at the |
| expense of all those other companies. To the extent that the protocols of |
| the World Wide Web remain "unowned" by a single company, the Web will |
| remain a level playing field for companies large and small. Thus, |
| "ownership" of the protocol must be prevented, and the existence of a |
| robust reference implementation of the protocol, available absolutely for |
| free to all companies, is a tremendously good thing. |
| |
| Furthermore, Apache is an organic entity; those who benefit from it |
| by using it often contribute back to it by providing feature enhancements, |
| bug fixes, and support for others in public newsgroups. The amount of |
| effort expended by any particular individual is usually fairly light, but |
| the resulting product is made very strong. This kind of community can |
| only happen with freeware -- when someone pays for software, they usually |
| aren't willing to fix its bugs. One can argue, then, that Apache's |
| strength comes from the fact that it's free, and if it were made "not |
| free" it would suffer tremendously, even if that money were spent on a |
| real development team. |
| |
| We want to see Apache used very widely -- by large companies, small |
| companies, research institutions, schools, individuals, in the intranet |
| environment, everywhere -- even though this may mean that companies who |
| could afford commercial software, and would pay for it without blinking, |
| might get a "free ride" by using Apache. We would even be happy if some |
| commercial software companies completely dropped their own HTTP server |
| development plans and used Apache as a base, with the proper attributions |
| as described in the LICENSE file. |
| |
| Thanks for using Apache! |
| |