Apache HTTP Server

Allikas: Vikipeedia
Disambig gray.svg  See artikkel räägib veebiserverist; teiste tähenduste kohta vaadake Apache

Apache HTTP Server
ASF-logo.svg
Autor Robert McCool
Arendaja Apache Software Foundation
Esmaväljalase 1995[1]
Viimane väljalase 2.4.3 / 21.08.2012
Kirjutatud keeles C
Platvorm Mitmeplatvormne
Keeled Inglise keel
Arenduse staatus Aktiivne
Suunitlus Veebiserver
Litsents Apache Litsents 2.0
Veebisait httpd.apache.org

Apache HTTP Server ehk lihtsalt Apache on veebiserver, mis on mänginud olulist rolli veebi arengus. Aastal 2009 sai sellest esimene veebiserver, mis suutis ületada 100 miljoni veebilehe verstaposti.[2] Apache oli esimene elujõuline konkurent Netscape Communications Corporation'i veebiserverile (praeguse nimega Sun Java System Web Server) ning on arvestatavaks konkurendiks teistele UNIXi põhistele veebiserveritele funktsionaalsuse ja jõudluse poolest. Enamik Apache veebiservereid on paigaldatud masinatele, mille operatsioonisüsteem on Linux[3].

Apache Software Foundationi egiidi all tegeleb Apache arendamise ja hooldamisega avatud tarkvaraarendajate kommuun. Server on paigaldatav ja jooksutatav mitmel operatsioonisüsteemil: UNIX, GNU, FreeBSD, Linux, Solaris, Novell NetWare, Mac OS X, Microsoft Windows, OS/2, TPF ja eComStation. Apache kasutab Apache Litsentsi ja seda loetakse avatud lähtekoodiga tarkvaraks.

Alates 1996. aasta aprillist on Apace kõige populaarsem HTTP server veebis. Alates 2009. aasta septembrist kasutab Apache serverit 54,48% kõigist veebilehtedest ja 66% miljonist kõige tihedama liiklusega veebilehest.[4]

Eestis oli Apache veebiserveri turuosa 2004. aastal 79% avalikest füüsilistest serveritest ning domeenipõhise arvestuse järgi serveeriti 95% kõigist saitidest Apache veebiserveritel.[5]

Ajalugu ja nimi[muuda | redigeeri lähteteksti]

Apache serveri esimese versiooni loojaks oli Robert McCool, kes oli tihedalt seotud NCSA veebiserveri arendamisega. Kui McCool 1994. aasta keskel projektist lahkus, siis jäi HTTP arendus toppama ja mitmed parandused sellele ringlesid e-kirjade kaudu. Parandusi levitasid lisaks McCool'ile Brian Behlendorf, Roy Fielding, Rob Hartill, David Robinson, Cliff Skolnick, Randy Terbush, Robert S. Thau, Andrew Wilson, Eric Hagberg, Frank Peters ja Nicolas Pioch, kes moodustasid algse "Apache grupi".

Nime kohta on mitmeid selgitusi. Apache Software Foundationi väitel valiti nimi austusest Ameerika indiaanlaste hõimu, apatšide vastu, kes olid tuntud vastupidavate ja osavate sõjameestena.[6]

Samas väitis originaalne KKK Apache kodulehel aastatel 1996–2001, et NCSA serveri parandustega kombineerimise tulemus oli "lapitud server" (inglise keeles a patchy server).[7][8]

Esimest selgitust kinnitas Brian Behlendorf 2000. aastal ühel Apache konverentsil.[9] Tema sõnul oli nimi vihjeks, et "Vange mitte võtta. Olge natuke agressiivsed ja andke tappa".[10]. Behlendorf läks oma sõnadega vastuollu, öeldes 2007. aastal ühes intervius, et "Apache server ei ole nimetatud Geronimo hõimu auks", vaid kuna saadeti nii palju parandusi, "kutsus grupp seda 'lapitud veebiserveriks'" (inglise a patchy Web server).[11]. Mõlemad selgitused on tõenäoliselt sobivad, kuigi sõnade mängul põhinevat selgitust ei soosita.[12]

Apache serveri teise versiooni lähtekood on võrreldes Apache 1.x-ga oluliselt ümber kirjutatud. Uue koodi kirjutamisel peeti silmas modulaarsuse suurendamist ja portatiivsuse arendamist (Apache Portable Runtime). Apache 2.x tuumal on olulisi eeliseid Apache 1.x-i ees: UNIXi hargtöötlus, parem tugi mitte-UNIXi platvormidele (näiteks Microsoft Windows), uus Apache rakendusliides ja IPv6 tugi.[13] Esimene Apache 2 alfa-väljalase oli 2000. aasta märtsis, esimene stabiilne versioon muutus kättesaadavaks 6. aprillil 2002. aastal.[14]

Versioon 2.2 tõi endaga kaasa veel paindlikuma autoriseerimise rakendusliidese. Parandatud on ka proksi ja puhvri mooduleid.[15]

Omadused[muuda | redigeeri lähteteksti]

Apache toetab mitmeid võimalusi, millest paljud realiseeruvad kompileeritud moodulitena, mis laiendavad tuuma funktsioone. Võimalused varieeruvad serveri välisete programmeerimiskeelte lubamisest kuni erinevate autentimisskeemide lubamiseni. Levinumad toetatud keeled on Perl, Python, Tcl ja PHP. Populaarsed autentmismoodulid on mod_access, mod_auth, mod_digest ja mod_auth_digest, mod_digest-i järglane. DBMS-i põhine autentimise andmebaas on toetatud. Muudest omadustest võib välja tuua SSL-i ja TLS-i toe (mod_ssl), proksi mooduli (mod_proxy), URL-i ümberkirjutamise (mod_rewrite) toe, seadistatavad logifailid (mod_log_config) ja filtreerimise (mod_include ja mod_ext_filter) tugi. Veateateid on võimalik seadistada ja Apache serverit toetavad mitmed graafilised kasutajaliidesed (GUI).

Virtuaal hostimine võimaldab ühel Apache installatsioonil teenindada mitut erinevat veebilehte.

Kasutamine[muuda | redigeeri lähteteksti]

Apachet kasutatakse peamiselt staatiliste ja dünaamiliste veebilehtede haldamiseks veebis. Mitmed veebirakendused eeldavad Apache poolt pakutava keskkonna ja funktsioonide olemasolu.

Apachet levitatakse osana mitmest firmaomasest tarkvarast. Näiteks kuulub Apache Oracle Andmebaasi ja IBM WebSphere rakenduste serveri juurde. Apache on integreeritud Mac OS X'i sisseehitatud veebiserverina ja selle WebObjects rakenduste serveri toetamiseks. Mõnevõrra toetavad seda ka Boreland'i arendustööriistad Kylix ja Delphi. Apache on osa mitmetest Linuxi distributsioonidest ja tuleb kaasa koos Novell Netware 6.5-ga, kus on vaikimisi veebiserveriks.

Apachet kasutatakse erinevateks ülesanneteks, kui materjale on vaja jagada ohutult ja usaldusväärselt. Näiteks failide jagamiseks oma arvutist üle interneti. Kasutaja, kes on paigaldanud Apache serveri oma personaalarvutisse võib jagatavad dokumendid Apache juurkausta paigaldada ja neid jagada.

Programmeerijad kasutavad tihti Apache serverit veebirakenduste testimiseks kohalikus võrgus.

Apache peamised konkurendid on Microsofti Internet Information Services (IIS), Sun Microsystems'i Sun Java System Web Server ja Zeus Web Server.

Jõudlus[muuda | redigeeri lähteteksti]

Apache arendamisel peetakse silmas tasakaalu paindlikuse, porditavuse ja jõudluse vahel. Seetõttu pole Apache loodud olema kõige kiirem server, kuid on võrreldav suure jõudluse peale orienteeritud serveritega. Apache server ei ole orienteeritud ühe ülesande täitmiseks, vaid võimaldab moodulite abil iga konkreetset serverit vastavalt vajadusele konfigureerida.

Litsents[muuda | redigeeri lähteteksti]

Tarkvaralitsents, mille alusel Apache Software Foundationi tarkvara levitatakse, on tähtis osa Apache serveri ajaloost ja tänapäevast avatud lähtekoodiga tarkvara kommuunis. Apache Litsents võimaldab nii avatud kui suletud lähtekoodiga versioonide tarkvara levitamist.

Vaba Tarkvara Fond ei loe Apache Litsentsi ühilduvaks GPL litsentsi teise versiooniga, mis tähendab seda, et Apache Litsentsi alla käivat tarkvara ei või integreerida tarkvarasse, mida levitatakse GPL litsentsi alusel.

GPL litsentsi kolmas versioon sisaldab sätet (lõik 7e), mis lubab ühilduvust litsentsidega, mis sisaldavad patentidega piiraatud klausleid, nende hulgas ka Apache Litsents.

Nimi Apache on registreeritud kaubamärk ja seda võib kasutada ainult valdaja loal.[16]

Viited[muuda | redigeeri lähteteksti]

  1. About the Apache HTTP Server Project. Kasutatud 10.11.2009. (Inglise k.)
  2. February 2009 Web Server Survey. Netcraft. Kasutatud 10.11.2009. (Inglise k.)
  3. https://secure1.securityspace.com/s_survey/data/man.200907/apacheos.html
  4. September 2009 Web Server Survey. Netcraft. Kasutatud 11.11.2009. (Inglise k.)
  5. Veiko Sang, Eesti veebi serveripoolse keskkonna uuring, magistritöö, 2004, lk 36
  6. Frequently Asked Questions. The Apache Software Foundation. Kasutatud 11.11.2009. (Inglise k.)
  7. Information on the Apache HTTP Server Project. 1996-10-28. Kasutatud 25.02.2010. (Inglise k.)
  8. Information on the Apache HTTP Server Project. 2001-08-03. Kasutatud 25.02.2010. (Inglise k.)
  9. Rich Bowen. A Patchy Server and the FAQ. Mailing list archives, 12.05.2001. Kasutatud 01.03.2010. (inglise keel)
  10. Apache Power. LINUX MAGAZINE, aprill 2000. Kasutatud 01.03.2010. (Inglise keel)
  11. Charles Babcock. High Five: Meet Brian Behlendorf, CTO of CollabNet. InformationWeek, 13.01.2007. CMP Media. Kasutatud 01.03.2010. (Inglise keel)
  12. Joshua Slive. A Patchy Server and the FAQ. 12.05.2001. (Inglise k.)
  13. Apache HTTP Server Documentation: Overview of new features in Apache 2.0. 2007. The Apache Software Foundation. (Inglise k.)
  14. Apache 2 Release. 06.04.2002. Apache Week. (Inglise k.)
  15. Overview of new features in Apache 2.2. 2007. The Apache Software Foundation. (Inglise k.)
  16. "Apache License and Distribution FAQ" The Apache Software Foundation, 2007. Külastatud 25.02.2010

Välislingid[muuda | redigeeri lähteteksti]