Apache HTTP Server

A Wikipédiából, a szabad enciklopédiából
Apache HTTP Server
ASF-logo.svg
Firefox screenshot-HTTP error 403.png
Hibaüzenet az Apache webszervertől

Fejlesztő Robert McCool és az Apache Software Foundation
Első kiadás 1995
Legfrissebb stabil kiadás 2.4.4 (2013. február 25.) +/-
Legfrissebb fejlesztői kiadás 2.3.14-beta (2011. augusztus 9.) +/-
Programozási nyelv C
Operációs rendszer platformfüggetlen
Állapot aktív
Kategória webkiszolgáló
Licenc Apache Licenc 2.0
Az Apache HTTP Server weboldala

Az Apache HTTP Server (röviden Apache) nyílt forráskódú webkiszolgáló alkalmazás, szabad szoftver, mely kulcsfontosságú szerepet játszott a World Wide Web elterjedésében. A projekt célja olyan webszerver program létrehozása, karbantartása, és fejlesztése, amely megfelel a gyorsan változó Internet követelményeinek, biztonságos, üzleti, vállalati felhasználásra is megfelelő és szabadon használható. Az Apache a régi NCSA HTTPd szerverre épül, az Apache Szoftver Licenc feltételei alatt terjesztik.

Az Apache robusztus, erőteljes és rugalmas webszerver, amely kompatibilis a HTTP/1.1 (RFC2616) protokollal. Az Apache projekt koordinálását az Apache Software Foundation végzi. Néhány vezető és több száz fejlesztő van e projekt mögött.

Az Apache volt az első használható alternatíva a Netscape Communications Corporation webszerverrel szemben (melynek mai neve Sun Java System Web Server). A későbbiekben továbbfejlődött és más unix alapú webszerverekkel is felvette a versenyt funkcionalitás és teljesítmény tekintetében.

Többek között a következő operációs rendszerekhez készítették el az Apache-t: Unix, FreeBSD, Linux, Solaris, Novell NetWare, Mac OS X és Microsoft Windows.

Története[szerkesztés | forrásszöveg szerkesztése]

A névválasztás oka kettős.[1] Egyrészt az állóképességükről híres apacs indiánoknak tiszteleg, akik az Egyesült Államok délnyugati részén élő őslakók.[2] Másrészt pedig egy szójáték: ,,a patchy server”, ami arra utal, hogy a szervert eleinte a webmesterek által készített patchekkel frissítették.[3] Az utóbbi azonban inkább egy szerencsés egybeesés eredménye.[4]

Az Apache az NCSA webszerver toldozgatásából fejlődött ki. Az NCSA egyike volt az első webszervereknek, amelyet az Illinois-i egyetemen található NCSA fejlesztett ki.

Az Apache projektet webmesterek, rendszergazdák kezdték el, amikor Rob McCool, az NCSA (National Center for Supercomputing Applications) webszerverének írója 1994 közepén kilépett az NCSA-tól, és a szoftver nem fejlődött tovább. A webmesterek levelezéssel tartották egymással a kapcsolatot, azon keresztül adták át egymásnak a patcheket, amelyek így körbe jártak. Ezt látva Brian Behlendorf és Cliff Skolnick a Hotwired segítségével elindított egy levelezési listát, ahova a core fejlesztők feliratkozhattak. Így indult el az Apache projekt. 1995 februárjában 8 core fejlesztővel megindult a koordinált fejlesztés. A core fejlesztők:

  • Brian Behlendorf
  • Roy T. Fielding
  • Rob Hartill
  • David Robinson
  • Cliff Skolnick
  • Randy Terbush
  • Robert S. Thau
  • Andrew Wilson

egyéb közreműködéssel hozzájárulók:

  • Eric Hagberg
  • Frank Peters
  • Nicolas Pioch

A második verzióban nagyrészt az első verziót írták újra, de nagyobb hangsúlyt fektettek a modularizációra és a hordozhatósági réteg (az Apache Portable Runtime) kifejlesztésére. Újdonság volt a UNIX szálak bevezetése, az IPv6 támogatása és megújult az Apache API is.[5] Az Apache 2 első alfáját 2000 márciusában adták ki, az általánosan elérhető változatát április 6-án 2002-ben.[6] A 2.2 verzióban új, rugalmasabb hitelesítési API készült és továbbfejlődtek a cache és a proxy modulok.[7]

1996 áprilisa óta az Apache az Interneten legszélesebb körben használt webkiszolgáló a Netcraft adatai alapján. 2005 novemberétől az Apache veszíteni kezdett a piaci részesedéséből, főleg a Microsoft IIS javára. 2008 februárjában az Apache a Föld webhelyeinek 50,93%-át szolgálja ki.[8]

Verziók

Szolgáltatások és tulajdonságok[szerkesztés | forrásszöveg szerkesztése]

Az Apache sok szabványt támogat, melyeknek nagy része lefordított modulok formájában áll rendelkezésre a mag kiegészítéseként. Ezek a modulok sok területet lefednek a kiszolgálóoldali programnyelv támogatástól kezdve a hitelesítési sémákig. Az ismertebb, támogatott programnyelv modulok a mod_perl (Perl), a mod_python (Python), mod_jk (Java) valamint a Tcl és a PHP. A népszerűbb hitelesítési modulok a mod_access, mod_auth és a mod_digest. További modulokban megvalósított tulajdonságokra példa még az SSL és TLS támogatást nyújtó mod_ssl, a mod_proxy proxy modul, egy hasznos URL átíró a mod_rewrite modulban, testre szabható loggolás a mod_log_config modulban és szűrési támogatás a mod_include és mod_ext_filter modulok segítségével.

A mod_gzip modul tömöríteni tud, segítségével csökkenthető a weboldalak mérete. Az Apache logok elemezhetőek böngészővel az AWStats/W3Perl vagy a Visitors programok segítségével.

A virtual hosting segítségével egyetlen Apache installáció ki tud szolgálni több különböző webhelyet is. Például egyetlen gép egyetlen Apache szerverrel képes kiszolgálni a www.valami.com, a teszt42.trallala.hu és a www.burgonya.org címekre érkező HTTP kéréseket.

Az Apache hibaüzenetei konfigurálhatóak. Számos grafikus felhasználói felület (röviden GUI) támogatja a szerver könnyebb és intuitívabb konfigurálását. További fontos tulajdonságai még a DBMS-alapú bejelentkeztetéses adatbázisok használatának lehetősége, valamint a tartalom szűrés.

Felhasználás[szerkesztés | forrásszöveg szerkesztése]

Statikus és dinamikus weboldalak közzétételére egyaránt használják. Sok webalkalmazást az Apache által nyújtott környezethez és szolgáltatásokhoz terveznek. Az Apache alkotja a webszerver komponenst a népszerű LAMP alkalmazáscsomagban, melynek további komponensei a MySQL adatbázisszerver és a PHP/Perl/Python programozási nyelvek mellett. A Ruby on Rails keretrendszer ajánlott platformja is az Apache a Phusion Passenger révén.[9]

Az Apache webszervert különböző kereskedelmi szoftvercsomagok (például az Oracle Database és az IBM WebSphere) részeként is terjesztik. A Mac OS X is magába foglalja az Apache-ot beépített webszerverként. A Novell NetWare 6.5 alapértelmezett webszervere is az Apache.

Az Apache nem csak weboldalak, hanem egyéb tartalom publikálására is használható, például tetszőleges fájlok megosztására is. Ha egy felhasználó telepíti az Apache-ot a személyi számítógépén, akkor tetszőleges fájlokat meg tud azon keresztül osztani, ha bemásolja őket az Apache document root könyvtárába.

A webalkalmazásokat készítő szoftverfejlesztők is gyakran használnak a személyi számítógépükön telepített Apache webszervert a fejlesztett kód tesztelésére.

Számos nagy honlap Apache webszerveren lakik. A Google keresőmotor felülete egy módosított Apache-on fut, melyet A Google Web Server (röviden GWS) névre kereszteltek.[10] A Wikimedia projektek, beleértve a Wikipédiát is Apache szervereken futnak.[11]

Licenc[szerkesztés | forrásszöveg szerkesztése]

Az Apache Szoftver Alapítvány szoftvereinek licence (az Apache Szoftver Licenc) megengedi a szoftver és módosított változatainak a nyílt és a zárt forráskódú terjesztését egyaránt.

A Szabad Szoftver Alapítvány szerint az Apache Szoftver Licenc nem kompatibilis a GNU GPL licenc második verziójával, tehát az Apache Szoftver Licenc alatt kiadott szoftver nem integrálható GNU GPL 2 alatt kiadott szoftverrel. A GNU GPL 3 verzió azonban már tartalmaz egy kitételt (a 7e szakaszban), amely megengedi a kompatibilitást.

Az Apache bejegyzett védjegy és csak a tulajdonos engedélyével használható.[12]

Hivatkozások[szerkesztés | forrásszöveg szerkesztése]

  1. Slive, Joshua (2001-05-12), "Re: A Patchy Server and the FAQ", apache-docs mailing list
  2. Frequently Asked Questions. The Apache Software Foundation, 2007
  3. Babcock, Charles. „High Five: Meet Brian Behlendorf, CTO Of CollabNet”, InformationWeek, CMP Media, 2007. január 13. 
  4. Apache Server Frequently Asked Questions
  5. Sablon:Cite manual
  6. Apache 2 Release. Apache Week, 2002. április 6
  7. Sablon:Cite manual
  8. February 2008 Web Server Survey. Netcraft. (Hozzáférés: 2008. március 7.)
  9. Deploy. Ruby on Rails. (Hozzáférés: 2009. október 25.)
  10. How Google works. (Hozzáférés: 2008. február 4.)
  11. Wikimedia web servers. Wikimedia wikitech-l mailing list, 2008. február 12. (Hozzáférés: 2008. február 12.)
  12. Apache License and Distribution FAQ. The Apache Software Foundation, 2007

Külső hivatkozások[szerkesztés | forrásszöveg szerkesztése]