Apache (palvelinohjelma)

Wikipediasta
Siirry navigaatioon Siirry hakuun
Tämä artikkeli käsittelee palvelinohjelmaa. Katso myös täsmennyssivu.
Apache HTTP Server
Luoja Robert McCool
Kehittäjä Apache Software Foundation
Kehityshistoria
Ensijulkaisu 1995
Vakaa versio 2.4.62 ()[1]
Kehitystilanne Aktiivinen
Tiedot
Ohjelmistotyyppi WWW-palvelin
Alusta Alustariippumaton
Ohjelmointikielet C, C++, XML
Lisenssi Apache 2
Aiheesta muualla
Verkkosivusto
Versiohallinta

Apache HTTP Server on avoimeen lähdekoodiin perustuva HTTP-palvelinohjelma. Apachen HTTP-palvelin on Apache Software Foundationin tunnetuin tuote.

Apachen HTTP-palvelin on saatavilla Unixille (BSD:t, Linux), Windowsille ja useille muille käyttöjärjestelmille, ja lisäksi se on integroitu OS X -käyttöjärjestelmään. Sen kehitys alkoi NCSA:n httpd-palvelinohjelmasta. Alkujaan Apache oli vain joukko päivityksiä ja korjauksia NCSA:n palvelimeen, mutta version 2.0 myötä se kirjoitettiin kokonaan uudelleen. Apachen nimi viittaa virallisesti Apassi-intiaaniheimoon, mutta sen on sanottu alusta lähtien olevan myös väännös ilmaisusta "a patchy server" (paikattu palvelin).[2]

Pelkkä Apache tukee ainoastaan staattisten tiedostojen jakamista HTTP-protokollan yli. Apachen ydintä voidaan täydentää useilla moduuleilla, jotka mahdollistavat palvelimen räätälöinnin omia tarpeita vastaavaksi. Osa moduuleista tulee ohjelmiston mukana, osa on muiden tahojen tekemiä. Mukana tulevia moduuleita ovat muun muassa mod_cgi, joka mahdollistaa ulkoisten ohjelmien ajamisen CGI-ympäristössä, ja mod_rewrite, joka mahdollistaa erittäin monipuolisen URIen manipuloinnin. Ulkopuolisia moduuleja ovat muun muassa mod_perl, joka integroi Perl-tulkin palvelimeen ja nopeuttaa täten Perl-kielellä kirjoitettujen skriptien suorittamista, ja mod_log_mysql, joka mahdollistaa lokien tallentamisen MySQL-tietokantaan.

Vuoden 1996 huhtikuusta lähtien Apache on ollut Internetin suosituin HTTP-palvelin. Netcraftin tutkimuksen mukaan Apachella on 50 prosentin osuus kaikista palvelimista elokuussa 2008.[3] Toiseksi suosituin palvelinohjelmisto on ollut Netcraftin mukaan Microsoftin IIS.[3] Myöhemmin nginx on ohittanut Apachen suosiossa ja Microsoftin palvelin on menettänyt suosiotaan.[4]

Apache käyttää usean prosessin arkkitehtuuria ilman säikeistystä. Jokainen käynnistetty prosessi voi käsitellä tulevia pyyntöjä, ja pääprosessi hallitsee käynnissä olevien prosessien poolia.[5] Varhaisissa versioissa oli viivettä, jotta palvelin saavuttaa tietyn määrän lapsiprosesseja kuormituksen palvelemiseen.[6]

Apachen versio 2.2.0 julkaistiin 1. joulukuuta 2005.

Apache käyttää versionumerojärjestelmää, jota Linux-ydin ennen käytti: jos sekundäärinen versionumero on pariton, on kyseessä kehitys- ja testiversio, jossa saattaa olla testaamattomia ja toimimattomia ominaisuuksia, ja jos numero on parillinen, on kyseessä vakaa, tuotantokäyttöön tarkoitettu versio.

  1. [ANNOUNCEMENT] Apache HTTP Server 2.4.62 Released, (viitattu ). Tieto on haettu Wikidatasta.
  2. Frequently Asked Questions The Apache Software Foundation. Viitattu 24.10.2010. (englanniksi)
  3. a b August 2008 Web Server Survey elokuu 2008. Netcraft. Arkistoitu 20.5.2010. Viitattu 27.9.2008. (englanniksi)
  4. September 2021 Web Server Survey news.netcraft.com. 29.9.2021. Viitattu 30.9.2021. (englanniksi)
  5. Apache MPM prefork httpd.apache.org. Viitattu 14.3.2024. (englanniksi)
  6. Apache Performance Tuning httpd.apache.org. Viitattu 14.3.2024. (englanniksi)

Aiheesta muualla

[muokkaa | muokkaa wikitekstiä]