Apache HTTP Server

A Wikipédiából, a szabad enciklopédiából
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.59 (stabil verzió, 2024. április 4.)[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 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]

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]

Licenc[szerkesztés]

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. Apache HTTP Server 2.4.59 Released (angol nyelven), 2024. április 4. (Hozzáférés: 2024. április 5.)
  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]