Skip to topic | Skip to bottom
Bennington College
r1.3 - 26 Mar 2006 - 21:29 - JoeHolt

Start of topic | Skip to actions

Apache

Apache Software Foundation "highly decentralized community of developers"

from the faq on their website: "Why was the Apache Software Foundation created?

The Foundation was formed primarily to a. provide a foundation for open, collaborative software development projects by supplying hardware, communication, and business infrastructure; b. create an independent legal entity to which companies and individuals can donate resources and be assured that those resources will be used for the public benefit; c. provide a means for individual volunteers to be sheltered from legal suits directed at the Foundation's projects; and, d. protect the 'Apache' brand, as applied to its software products, from being abused by other organizations.

Is the Apache Software Foundation (ASF) a Corporation? Yes, the ASF is a membership-based corporation registered in Delaware, United States. It is intended to be a registered non-profit charity, and in fact was given 501(c)(3) status by the U.S. Internal Revenue Service. However, even if something happens that changes that status, the ASF is still a not-for-profit enterprise."

open source HTTP server - httpd

others Ant - java based build tool - like make APR - Apache Portable Runtime Project - free library of cross platform data structures a nd routines in C lots of java, web development, and database related frameworks

Apache HTTP Server Project

from httpd.apache.org: "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." History: February 1995 most popular server software was public domain httpd by Rob McCool at the National Center for Supercomputing Applications, University of Illinois, Urbana-Champaig n. development stalled after Rob left NCSA in 1994 many webmasters had developed their own extensions and bugfixes in need of common distri bution. small group gathered together to coordinate changes. 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 NCSA httpd 1.3 base added all of the published bug fixes and worthwhile enhancements cou ld find, tested the result on own servers first official public release (0.6.2) of the Apache server in April 1995. NCSA restarted their own development, joined the list in March as honorary members so th at the two projects could share ideas and fixes. Less than a year after the group was formed, the Apache server passed NCSA's httpd as th e #1 server on the Internet and according to the survey by Netcraft, it retains that pos ition today. In 1999, members of the Apache Group formed the Apache Software Foundation to provide or ganizational, legal, and financial support for the Apache HTTP Server. The foundation ha s placed the software on a solid footing for future development, and greatly expanded th e number of Open Source software projects, which fall under this Foundation's umbrella.

HTTP: from wikipedia HTTP is a request/response protocol between clients and servers. The originating client, such as a web browser, spider, or other end-user tool, is referred to as the user agent. The destination server, which stores or creates resources such as HTML files and images, is called the origin server. Inbetween the user agent and origin server may be several intermediaries, such as proxies, gateways, and tunnels.

A HTTP client initiates a request by establishing a Transmission Control Protocol (TCP) connection to a particular port on a remote host (port 80 by default; see List of well-known ports (computing)). A HTTP server listening on that port waits for the client to send a Request Message. Upon receiving the request, the server sends back a status line, such as "HTTP/1.1 200 OK", and a message of its own, the body of which is perhaps the requested file, an error message, or some other information.

Request methods HTTP defines eight methods indicating the desired action to be performed on theidentifie d resource. * GET - Requests a representation of the specified resource. By far the most common method used on the Web today. * HEAD - Asks for the response identical to the one that would correspond to a GET reque st, but without the response body. This is useful for retrieving meta-information writte n in response headers, without having to transport the entire content. * POST - Submits user data (e.g. from a HTML form) to the identified resource. The data is included in the body of the request. * PUT - Uploads a representation of the specified resource. * DELETE - Deletes the specified resource (rarely implemented). * TRACE - Echoes back the received request, so that a client can see what intermediate s ervers are adding or changing in the request. * OPTIONS - Returns the HTTP methods that the server supports. This can be used to check the functionality of a web server. * CONNECT - For use with a proxy that can change to being an SSL tunnel. HTTP servers are supposed to implement at least GET and HEAD methods and, whenever possi ble, also OPTIONS method.

  • telnet cs0.bennington.edu 80
  • GET index.html HTTP/1.0
  • (a blank line)