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.

Httpd.conf tiedoston esimerkki

Kurkataan vielä lopuksi miltä kokonaisuus näyttää. Alapuolella olevassa koodilistauksessa on toimiva ja mukautettu Apachen konfiguraatitiedosto kokonaisuudessaan:



# ----------------------------------------------------------------
# I. YLEISET ASETUKSET
# ----------------------------------------------------------------


#PALVELIMEN FYYSINEN ROOTTI
ServerRoot "C:/Program Files/Apache Group/Apache2"

# SUORITUKSEN AIKARAJA
Timeout 300

# KESTÄVÄT HTTP-YHTEYDET
KeepAlive On

# YHTEYKSIEN MAKSIMIMÄÄRÄ
MaxKeepAliveRequests 100

# KESTÄVÄN HTTP-YHTEYDEN KESTO
KeepAliveTimeout 15
#

# KUUNNELTAVA PORTTI
Listen 8080

# RUNTIME TIETOJA PROSESSEISTA
# Jotkin arkkitehtuurit eivät vaadi tätä. Tarvittaessa file luodaan automaattisesti
# Tällöin tosin tulee varmistaa, etteivät Apachen ilmentymät käytä samaa fileä.
#ScoreBoardFile logs/apache_runtime_status

# PROSESSIEN ID-FILE
PidFile logs/httpd.pid


## POOLIN KOON SÄÄNNÖSTELY
<IfModule mpm_winnt.c>
# THREADEJA PER LAPSI
ThreadsPerChild 250
# PYYNTÖJEN MAX. MÄÄRÄ PER LAPSI
MaxRequestsPerChild  0
</IfModule>

# HALUTAANKO PALJON VAI HULLUSTI TIETOA PALVELIMEN TOIMINNASTA
#ExtendedStatus On



# ----------------------------------------------------------------
# MODUULIT
# ----------------------------------------------------------------

# IP/DNS-SUODATIN
LoadModule access_module modules/mod_access.so

# ACTION MODUULI CGI-kutsuihin
LoadModule actions_module modules/mod_actions.so

# ALIAS TOIMINNOT
LoadModule alias_module modules/mod_alias.so

# ASIS TOIMINNOT
LoadModule asis_module modules/mod_asis.so

# AUTENTIKOINTI 
LoadModule auth_module modules/mod_auth.so
#LoadModule auth_anon_module modules/mod_auth_anon.so
#LoadModule auth_dbm_module modules/mod_auth_dbm.so
#LoadModule auth_digest_module modules/mod_auth_digest.so

# INDEXOINTI 
LoadModule autoindex_module modules/mod_autoindex.so

#CGI-TOIMINNOT
LoadModule cgi_module modules/mod_cgi.so

# DAV TOIMINNOT
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so

# UUDELLEENOHJAUS JA OLETUSTIEDOSTOT
LoadModule dir_module modules/mod_dir.so

# YMPÄRISTÖMUUTTUJAT
LoadModule env_module modules/mod_env.so

# HTTP-EXPIRES 
#LoadModule expires_module modules/mod_expires.so

# MUKAUTETUT HTTP-OTSIKOT
#LoadModule headers_module modules/mod_headers.so

# SERVER-SIDE KUVAKARTAT
LoadModule imap_module modules/mod_imap.so

# SSI MOKKULA
LoadModule include_module modules/mod_include.so

# PALVELIMEN INFOA
LoadModule info_module modules/mod_info.so

# ISAPI
LoadModule isapi_module modules/mod_isapi.so

# TAPAHTUMALOKI
LoadModule log_config_module modules/mod_log_config.so

# TIEDOSTOJEN MIMETYYPIT JA KYTKÖKSET
LoadModule mime_module modules/mod_mime.so

# PROXY
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

# CONTENT NEGOTIATION MODUULI
LoadModule negotiation_module modules/mod_negotiation.so

# URLIEN MANIPULOINTIIN
#LoadModule rewrite_module modules/mod_rewrite.so

# YMPÄRISTÖMUUTTUJISTA
LoadModule setenvif_module modules/mod_setenvif.so

# TYPOT JA MUUT KIRJOITUSHÄRÖT
#LoadModule speling_module modules/mod_speling.so

# PALVELIMEN STATUS MODUULI
LoadModule status_module modules/mod_status.so

# UNIIKKI ID JOKAISELLE PYYNNÖLLE 
#LoadModule unique_id_module modules/mod_unique_id.so

# USERDIR
LoadModule userdir_module modules/mod_userdir.so

# USERTRACKERI
#LoadModule usertrack_module modules/mod_usertrack.so

# VIRTUALHOST ALIAS
#LoadModule vhost_alias_module modules/mod_vhost_alias.so

# SSL
#LoadModule ssl_module modules/mod_ssl.so

# PHP 
# php 4.02 ei worki moduulina apache 2:n kanssa, joten jätetään kommentoiduksi
# ja käytetään php:n cgi-motikkaa sen sijaan...
#LoadModule php4_module c:/php/sapi/php4apache.dll


# ----------------------------------------------------------------
# II. PALVELIMEN EMOPROSESSIN OMINAISUUDET
# ----------------------------------------------------------------

# ADMIN EMAIL
ServerAdmin webmaster@2kmediat.com

# PALVELIMEN NIMI JA PORTTI
ServerName localhost:8080

# KANOONINEN VIITTAUSTAPA
UseCanonicalName Off

# YLEISET HAKEMISTOJEN OIKEUDET
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>


# DOKUMENTTIEN ROOT HAKEMISTO
DocumentRoot "C:/Apache2/htdocs"
<Directory "C:/Apache2/htdocs">
	Options Indexes FollowSymLinks ExecCGI Includes
	AllowOverride None
    Order deny,allow
	Deny from all
	Allow from localhost 127.0.0.1
</Directory>

# OLETUSARVOISET ALOITUSSIVUT 
DirectoryIndex index.html index.php

# ESTOTIEDOSTON NIMI
AccessFileName .htaccess
#
<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>


# MP3 SULKU
<Files ~ "^\.mp3">
    Order allow,deny
    Deny from all
</Files>


# EXE SULKU
<Files ~ "^\.exe">
    Order allow,deny
    Deny from all
</Files>


# MIME-TYYPPIEN MÄÄRITTELYTIEDOSTON SIJAINTI
TypesConfig conf/mime.types

# OLETUSARVOINEN MIME-TYYPPI
DefaultType text/plain

# DNS CHECKI
HostnameLookups Off

# VIRHELOKIN TIEDOSTO
ErrorLog logs/error.log

# LOKITASO
LogLevel warn

# TAPAHTUMALOKIN SIJAINTI JA TYYPPI
CustomLog logs/access.log combined

# TAPAHTUMALOKIN MUOTOILU
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

# PALVELIMEN SIGNATURE
ServerSignature On

# ----------------------------------------------------------------
# ALIAKSET
# ----------------------------------------------------------------

# IKONIT
Alias /icons/ "C:/Program Files/Apache Group/Apache2/icons/"
<Directory "C:/Program Files/Apache Group/Apache2/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


# MANUAALI
Alias /manual "C:/Program Files/Apache Group/Apache2/manual"
<Directory "C:/Program Files/Apache Group/Apache2/manual">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>




# ----------------------------------------------------------------
# CGI - SKRIPTIT
# ----------------------------------------------------------------

AddHandler cgi-script .cgi

ScriptAlias /cgi-bin/ "C:/Apache2/htdocs/cgi-bin/"
<Directory "C:/Apache2/htdocs/cgi-bin">
    AllowOverride None
    Options execCGI
    Order allow,deny
    Allow from all
</Directory>


# ----------------------------------------------------------------
# SSI - SIVUT
# ----------------------------------------------------------------

AddHandler server-parsed .shtml 

# ----------------------------------------------------------------
# PHP - SIVUT
# ----------------------------------------------------------------

ScriptAlias /php4/ "C:/php/"
Action application/x-httpd-php4 "/php4/php.exe"
AddType application/x-httpd-php4 .php .php3 .phtml


# ----------------------------------------------------------------
# MUUT SUORITETTAVAT TIEDOSTOPÄÄTTEET
# ----------------------------------------------------------------

# For type maps (negotiated resources - Apace "it worked page"):
AddHandler type-map var


# ----------------------------------------------------------------
# UUDELLEENOHJAUKSET
# ----------------------------------------------------------------

# Redirect permanent /foo http://www.example.com/bar

# ----------------------------------------------------------------
# HAKEMISTOJEN INDEKSOINTI JA IKONIKUVAKKEET
# ----------------------------------------------------------------

IndexOptions FancyIndexing VersionSort
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*
AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^
DefaultIcon /icons/unknown.gif
#AddDescription "GZIP compressed document" .gz
#AddDescription "tar archive" .tar
#AddDescription "GZIP compressed tar archive" .tgz
ReadmeName README.html
HeaderName HEADER.html
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
AddEncoding x-compress Z
AddEncoding x-gzip gz tgz


# ----------------------------------------------------------------
# KIELIVALINNAT
# ----------------------------------------------------------------

# OLETUSKIELI
# DefaultLanguage fi

# SUOMENKIELISEN SISÄLLÖN PÄÄTE
AddLanguage fi .fi

# KIELTEN PRIORITEETTI
LanguagePriority fi en da nl et fr de el it ja kr no pl pt pt-br ltz ca es sv tw

# OLETUSKOODAUS
AddDefaultCharset ISO-8859-1

# TOTEUTUSKIELI/TAPA JOS EI MATCHIA
ForceLanguagePriority Prefer Fallback


# ----------------------------------------------------------------
# MUKAUTETTAVAT VIRHEILMOITUKSET
# ----------------------------------------------------------------

<IfModule mod_negotiation.c>
	<IfModule mod_include.c>
	
	Alias /error/ "C:/Apache2/errors/"
	
	<Directory "C:/Apache2/errors">
		AllowOverride None
		Options IncludesNoExec
		AddOutputFilter Includes html
		AddHandler type-map var
		Order allow,deny
		Allow from all
		LanguagePriority fi en es de fr
		ForceLanguagePriority Prefer Fallback
	</Directory>

	ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
	ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
	ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
	ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
	ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
	ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
	ErrorDocument 410 /error/HTTP_GONE.html.var
	ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
	ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
	ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
	ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
	ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var
	ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
	ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
	ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
	ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
	ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
	</IfModule>
</IfModule>


# SELAIMIIN LIITTYVIÄ BUGIFIXEJÄ
BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully



# ----------------------------------------------------------------
# PALVELIMEN TIETOJEN KATSELEMINEN SELAIMEN AVULLA
# ----------------------------------------------------------------

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from localhost 127.0.0.1
</Location>

<Location /server-info>
    SetHandler server-info
    Order deny,allow
    Deny from all
    Allow from localhost 127.0.0.1
</Location>


# ----------------------------------------------------------------
# PROXY
# ----------------------------------------------------------------

#<IfModule mod_proxy.c>
#ProxyRequests On
#
#<Proxy *>
#    Order deny,allow
#    Deny from all
#    Allow from .your-domain.com
#</Proxy>

#ProxyVia On

#CacheRoot "C:/Program Files/Apache Group/Apache2/proxy"
#CacheSize 5
#CacheGcInterval 4
#CacheMaxExpire 24
#CacheLastModifiedFactor 0.1
#CacheDefaultExpire 1
#NoCache a-domain.com another-domain.edu joes.garage-sale.com

#</IfModule>



# ----------------------------------------------------------------
# SSL
# ----------------------------------------------------------------

<IfModule mod_ssl.c>
    Include conf/ssl.conf
</IfModule>



# ----------------------------------------------------------------
# III. VIRTUAALIPALVELUT
# ----------------------------------------------------------------

# Use name-based virtual hosting.
#NameVirtualHost *

# VirtualHost example:
#
#<VirtualHost *>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>