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.

Apache HTTP Server
Hibaüzenet az Apache webszervertől
Hibaüzenet az Apache webszervertől

FejlesztőRobert McCool és az Apache Software Foundation
Első kiadás1995
Legfrissebb stabil kiadás2.4.62 (stabil verzió, 2024. július 17.)[1]
Legfrissebb fejlesztői kiadás2.3.14-beta (2011. augusztus 9.) +/-
Programozási nyelvC
Operációs rendszerplatformfüggetlen
Állapotaktív
Kategóriawebkiszolgáló
LicencApache Licenc 2.0
Az Apache HTTP Server weboldala

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

A névválasztás oka kettős.[2] 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.[3] 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.[4] Az utóbbi azonban inkább egy szerencsés egybeesés eredménye.[5]

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.[6] 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.[7] A 2.2 verzióban új, rugalmasabb hitelesítési API készült és továbbfejlődtek a cache és a proxy modulok.[8]

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.[9]

2017 márciusában az összes magyar domain 74,50%-a használta az Apache-t.[10]

Verziók

Szolgáltatások és tulajdonságok

szerkesztés

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

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.[11]

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.[12] A Wikimedia projektek, beleértve a Wikipédiát is Apache szervereken futnak.[13]

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ó.[14]

Hivatkozások

szerkesztés
  1. [ANNOUNCEMENT Apache HTTP Server 2.4.62 Released], 2024. július 17. (Hozzáférés: 2024. július 17.)
  2. Slive, Joshua (2001-05-12), "Re: A Patchy Server and the FAQ", apache-docs mailing list
  3. Frequently Asked Questions. The Apache Software Foundation, 2007
  4. Babcock, Charles. „High Five: Meet Brian Behlendorf, CTO Of CollabNet”, InformationWeek, CMP Media, 2007. január 13.. [2008. február 19-i dátummal az eredetiből archiválva] (Hozzáférés: 2008. április 14.) 
  5. Apache Server Frequently Asked Questions. [2008. május 18-i dátummal az eredetiből archiválva]. (Hozzáférés: 2008. április 14.)
  6. Apache HTTP Server Documentation. Overview of new features in Apache 2.2. The Apache Software Foundation, 2007
  7. Apache 2 Release. Apache Week, 2002. április 6.
  8. Apache HTTP Server Documentation. Overview of new features in Apache 2.2. The Apache Software Foundation, 2007
  9. February 2008 Web Server Survey. Netcraft. (Hozzáférés: 2008. március 7.)
  10. Magyar internetes statisztikái dkers.hu (magyar nyelven). www.dkers.hu. [2017. február 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2017. március 1.)
  11. Deploy. Ruby on Rails. [2009. július 7-i dátummal az eredetiből archiválva]. (Hozzáférés: 2009. október 25.)
  12. How Google works. [2009. február 25-i dátummal az eredetiből archiválva]. (Hozzáférés: 2008. február 4.)
  13. Wikimedia web servers. Wikimedia wikitech-l mailing list, 2008. február 12. (Hozzáférés: 2008. február 12.)
  14. Apache License and Distribution FAQ. The Apache Software Foundation, 2007

További információk

szerkesztés
  NODES
INTERN 3