Apache HTTP-palvelin

APACHE HTTPD KOULUTUSTA VUONNA 2025!

Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi heti! Koulutuksen järjestää asiantuntijasi Koulutus- ja konsultointipalvelu KK Mediat.

ServerName, DocumentRoot ja muut periytyvät ominaisuudet Apache HTTP-palvelimellat

Tässä osiossa määriteltävät ominaisuudet muodostavat yleisen mallin, jota Apache hyödyntää ellei virtuaalihosteissa (eli sivustoissa) määritellä poikkeavaa käyttäytymismallia.

Esimerkiksi Apache-palvelimen oletussivustoksi on määritelty 2kmediat.com. Samalle palvelimella on myös virtuaalihosteina alidoimainit dummy1.2kmediat.com ja dummy2.2kmediat.com. Näistä ensimmäiselle on määritelty sivuston juurikansio, jälkimmäiselle ei. Tässä tilanteessa Apache periyttää arvon oletussivustolta ja olettaa että jälkimmäisen alidomainin juurikansio sijaitsee samassa paikassa kuin pääpalvelun juurikansio.

ServerAdmin määrittää palvelimen ylläpitäjän kontaktin

Ominaisuus ServerAdmin määrittelee palvelimen ylläpitäjän sähköpostiosoitteen. Osoitteen tulisi olla ehdottomasti oikea, sillä tätä käytetään mm. automaattisesti generoitavissa virheilmoituksissa. Esimerkiksi:

ServerAdmin webmaster@2kmediat.com


ServerName määrittää palvelimen tunnistenimen

Ominaisuus ServerName määrittelee nimen ja portin, joiden avulla Apache palvelin tunnistaa itsensä. Mikäli ominaisuuden arvo on väärä, ei HTTP-palvelin käynnisty. Mikäli palvelinkoneella ei ole rekisteröityä FQDN-nimeä, voidaan ominaisuuden arvoksi antaa IP-osoite. Koska kuitenkin pystytämme tässä esimerkissä paikallista palvelinta, käytämme viittauksessa loopback-osoitetta localhost. Esimerkiksi:

ServerName localhost:8080
# sama asia IP-osoitteen avulla olisi
# ServerName 127.0.0.1:8080


Apachen versioissa 2.x tämä ominaisuus ylittää 1.3.x versioissa käytetyn Port-ominaisuuden.

Documentroot määrittää julkaisukansion sijainnin

Ominaisuus DocumentRoot määrittelee kansion, jonne julkaistavat www-tiedostot sijoitetaan. Perinteisesti julkaisukansion oletusarvoinen nimi on ollut htdocs tai public_html.

Alla olevassa esimerkissä C-aseman juureen on luotu uusi kansio ApacheWeb. Tietoturvan kannalta on suositeltavaa siirtää julkaisukansio mahdollisimman kauas oletusarvoisesta "Program Files"-kansiosta.


DocumentRoot "C:/ApacheWeb"
# Huom. Kansiopolun loppuun ei saa sijoittaa kauttaviivaa


Tällöin esimerkiksi em. kansion juuressa olevaan tiedostoon testi.html voidaan viitata osoitteella http://localhost/testi.html.

Oletusarvoisesti kaikki pyynnöt noudetaan julkaisukansiosta, mutta mm. alias-ominaisuutta käyttämällä on mahdollista viitata myös hakemiston ulkopuolella sijaitseviin resurssiehin.

UseCanonicalName määrittää miten sivusto tunnistaa nimensä

Ominaisuus UseCanonicalName määrittelee kuinka palvelin tunnistaa itsensä, ja kuinka siihen itseensä viittaavat osoitteet muodostetaan. Tälläisiä tilanteita ovat esimerkiksi käyttäjälle esitettävät virhesivut sekä CGI/PHP-skriptien SERVER_NAME ja SERVER_PORT-ympäristömuuttujat. Kun ominaisuuden arvo on "off", muodostetaan osoite asiakkaan (client) HTTP-otsikoissa välittämästä host- ja port-tiedosta. Jos arvo on "on", käytetään osoitteen muodostamisessa ServerName-ominaisuuden arvoa.

UseCanonicalName Off

Alkaen Apache 2.2.x tämä ominaisuus löytyy konfiguraatiotiedostosta /conf/extras/httpd-defaults.conf

HostNameLookups määrittää IP-osoitteiden DNS-käytännöt

Ominaisuus HostnameLookups määrittää tarkistaako palvelin asiakkaan (client) IP-osoitteen DNS-nimen vai ei. Isäntänimen tarkistus nimipalvelimelta kestää aina jonkin verran aikaa ja siksi ominaisuus kannattaa pitää poiskytkettynä, ellei sen käyttämiselle ole jotain painavaa syytä. Mikäli ominaisuus on "Off"-asennossa, CGI:n/ SSI:n ominaisuus REMOTEHOST ei palauta arvoa.


HostnameLookups Off

Alkaen Apache 2.2.x tämä ominaisuus löytyy konfiguraatiotiedostosta /conf/extras/httpd-defaults.conf

ServerTokens ja ServerSignature

Ominaisuus ServerTokens määrittää mitä tietoja itsestään palvelin palauttaa asiakkaalle. ServerSignature direktiivi määrittää näytetäänkö mm. virhesivuissa palvelimen nimi ja ylläpitäjän yhteystiedot. Esimerkki:


ServerTokens Prod
ServerSignature Off


Alkaen Apache 2.2.x tämä ominaisuus löytyy konfiguraatiotiedostosta /conf/extras/httpd-defaults.conf