Tartalomjegyzék
Kivonat
A http://www.netcraft.com/ címen olvasható felmérés szerint, több mint 50 százalékos részesedésével az Apache HTTP-kiszolgáló (Apache) a világ legnépszerűbb webkiszolgálója. Az Apache, amelyet az Apache Software Foundation (http://www.apache.org/) fejleszt, a legtöbb operációs rendszeren elérhető. Az openSUSE az Apache 2.2-es verzióját tartalmazza. A jelen fejezetben bemutatjuk a webkiszolgáló telepítését és beállítását; az SSL, a CGI és más modulok használatát; valamint az Apache webkiszolgálóval kapcsolatos hibaelhárítást.
A fejezetben leírtak alapján az Apache gyorsan beüzemelhető és használatba vehető. Az Apache telepítésére és beállítására csak a root jogosult.
Az Apache webkiszolgáló telepítése előtt győződjön meg róla, hogy az alábbi követelmények teljesülnek:
A gépen a hálózat helyesen be van állítva. További információ erről a témakörről: 21. fejezet - A hálózatkezelés alapjai.
A gépen az idő pontosságát egy időkiszolgálóval való szinkronizálás biztosítja. Ez azért szükséges, mert a HTTP-protokoll egyes részei függenek a helyes időtől. További ismeretek erről a témakörről a 25. fejezet - Időszinkronizálás NTP-vel részben találhatók.
A legfrissebb biztonsági frissítések telepítve vannak. Ha kétségei lennének, futtassa le a YaST Online frissítést.
A webkiszolgáló alapértelmezett portjának (a 80-as port) nyitva kell lennie a tűzfalon. Ehhez állítsa be a SUSEFirewall2-t úgy, hogy az engedje a szolgáltatást a külső zónában. Ez elvégezhető a YaST segítségével. Ennek részletes leírása: Section “Configuring the Firewall with YaST” (Chapter 14, Masquerading and Firewalls, ↑Security Guide).
Az Apache egy openSUSE rendszeren alapértelmezés szerint nincs telepítve. Az előre beállított változat telepítéséhez „”, a következőket kell tenni:
Eljárás 28.1. Apache telepítése alapértelmezett beállításokkal
Indítsa el a YaST programot és válassza ki a + modult.
A + legördülő menü beállítása után válassza ki a mintát.
A telepítési folyamat befejezéséhez erősítse meg a függő csomagok telepítését.
A telepítés során felkerül a többprocesszoros apache2-prefork modul, valamint a PHP5 modul is. A modulokkal kapcsolatos további információ: 28.4. - Modulok telepítése, aktiválása és beállítása.
Az Apache elindítható a rendszer indításakor automatikusan vagy a rendszer indítását követően kézzel.
Eljárás 28.2. Apache elindítása automatikusan
Az Apache a rendszer 3-as, vagy 5-ös futási szinten történő automatikus indításához a következő parancsot kell futtatni:
chkconfig -a apache2
Másik lehetőség a YaST-ban a + modul indítása.
Keresse ki az apache2 pontot, majd a szolgáltatást.
A webkiszolgáló azonnal elindul.
A módosítások elmentéséhez nyomja meg az gombot.
Mostantól, a rendszer indulásakor az Apache szolgáltatás automatikusan elindul a 3-as és az 5-ös futási szinten
További információ az openSUSE futási szintjeiről és a YaST futásiszint-szerkesztőjének leírása: 16.2.3. - Rendszerszolgáltatások (futási szintek) beállítása a YaST segítségével.
Az Apache parancsértelmezőből történő indításához ar rcapache2 start parancsot kell kiadni.
Eljárás 28.3. Apache futásának ellenőrzése
Ha nem kap hibaüzenetet az Apache indulásakor, akkor az általában azt jelenti, hogy a webkiszolgáló fut. Ennek tesztelése a következőképpen lehetséges:
Indítson el egy böngészőt és írja be, hogy http://localhost/.
Amennyiben az Apache fut, akkor az „It works!” felirat jelenik meg a böngészőben.
Ha nem ez az oldal jelenik meg, forduljon az alábbi részhez: 28.8. - Hibaelhárítás.
Most, hogy a webkiszolgáló fut, felveheti saját dokumentumait, módosíthatja a konfigurációt az igényeknek megfelelően, vagy éppen kibővítheti a funkcionalitást további modulok telepítésével.
Az openSUSE kétféle beállítási lehetőségre ad módot:
A kézi beállítás részletesebb lehet, de a YaST GUI használata jóval kényelmesebb.
![]() | Beállítások módosítását követő újratöltése vagy újraindítás |
|---|---|
A legtöbb beállítási módosítása után újratöltés, néhánynál pedig újraindítás szükséges. Az Apache kézi újratöltéséhez használja az rcapache2 Amennyiben az Apache beállítása a YaST használatával történt, akkor automatikusan megtörténik, amint a a 28.2.3.2. - HTTP-kiszolgáló beállítások fejezetben leírt módon. | |
Az alábbi fejezetben az Apache konfigurációs fájljairól esik szó. Ha úgy dönt, hogy a YaST-ot használja konfigurációs eszközként, akkor nem kell a konfigurációs fájlokkal foglalkoznia – azonban ezek az információk fontosak lehetnek, ha későbbiek során kézi beállításra kíván áttérni.
Az Apache konfigurációs fájljai két helyen találhatók:
/etc/sysconfig/apache2¶
Az /etc/sysconfig/apache2 könyvtárban találhatók az Apache egyes globális beállításai, például a betöltendő modulok, további figyelembe veendő konfigurációs fájlok, a kiszolgáló indításakor figyelembe veendő jelzők, illetve a parancssorba beírandó jelzők. A fájl minden beállítási lehetősége alaposan le van írva, ezért itt nem foglalkozunk velük. Egy általános célú webkiszolgálóhoz az /etc/sysconfig/apache2 fájl beállításai mindenféle konfigurációs igényhez meg kell, hogy feleljenek.
/etc/apache2/¶
Az /etc/apache2/ könyvtárban található az Apache összes többi konfigurációs fájlja. Az alábbiakban leírjuk az egyes fájlok szerepeit. Minden egyes fájlban többféle beállítási lehetőség (másik gyakori nevén direktíva) található. Az egyes fájlok minden beállítási lehetősége alaposan le van írva, ezért itt nem foglalkozunk velük.
Az Apache konfigurációs fájlok az alábbi módon szerveződnek:
/etc/apache2/
|
|- charset.conv
|- conf.d/
| |
| |- *.conf
|
|- default-server.conf
|- errors.conf
|- httpd.conf
|- listen.conf
|- magic
|- mime.types
|- mod_*.conf
|- server-tuning.conf
|- ssl.*
|- ssl-global.conf
|- sysconfig.d
| |
| |- global.conf
| |- include.conf
| |- loadmodule.conf . .
|
|- uid.conf
|- vhosts.d
| |- *.confAz /etc/apache2/ Apache-konfigurációs fájljai
charset.conv
Az egyes nyelvekhez használt karakterkészleteket adja meg. Ne módosítsa.
conf.d/*.conf
Más modulok által felvett konfigurációs fájlok. Ezek a konfigurációs fájlok szükség esetén a virtuális gépek beállításánál használhatók. Példák a vhosts.d/vhost.template fájlban láthatók. Használatukkal eltérő modulkészletek állíthatók be az egyes virtuális gépekhez.
default-server.conf
Általános beállítások az összes virtuális géphez, ésszerű alapértelmezésekkel. Az értékek módosítása helyett írja felül őket egy virtuálisgép-konfigurációval.
errors.conf
Azt szabályozza, hogyan reagáljon az Apache a hibákra. Az összes virtuális gépre vonatkozóan az üzenetek testreszabásához ezt a fájlt kell módosítani. Egyébként ezeket a direktívákat a virtuálisgép-beállításoknál egyenként lehet felülírni.
httpd.conf
Az Apache kiszolgáló fő konfigurációs fájlja. Kerülje ennek a fájlnak a módosítását. Elsősorban csak beágyazó utasításokat és általános beállításokat tartalmaz. Az általános beállításokat inkább a vonatkozó konfigurációs fájlokban írja felül. A gépspecifikus beállításokat (például a fő dokumentumkönyvtárat) a virtuálisgép-konfigurációkban módosítsa.
listen.conf
Az Apache kiszolgálót meghatározott IP-címekhez és portokhoz rendeli. Szintén itt kell beállítani a név alapú virtuális gépeket. Ennek részletes leírása: 28.2.2.1.1. - Név alapú virtuális gépek.
magic
A mime_magic modul adatai, amely segít az Apache-nak automatikusan meghatározni egy ismeretlen fájl típusát. Ne módosítsa.
mime.types
A rendszer által ismert MIME-típusok (ez valójában csak egy hivatkozás az /etc/mime.types fájlra). Ne módosítsa. Ha további, itt még fel nem sorolt MIME-típusokra van szükség, akkor azokat a mod_mime-defaults.conf fájlba vegye fel.
mod_*.conf
Az alapértelmezés szerint telepített modulok konfigurációs fájljai. Részletek: 28.4. - Modulok telepítése, aktiválása és beállítása. Ne feledje, hogy az opcionális modulok konfigurációs fájljai a conf.d könyvtárban találhatók.
server-tuning.conf
A különféle MPM-ek (lásd: 28.4.4. - Többprocesszoros modulok (MPM)) konfigurációs direktíváit, valamint az Apache teljesítményét szabályozó általános konfigurációs beállításokat tartalmazza. Ha módosítja, feltétlenül alaposan tesztelje le a webkiszolgáló működését.
ssl-global.conf és ssl.*
Globális SSL-konfigurációs és SSL-tanúsítványadatok. Részletek: 28.6. - Biztonságos webkiszolgáló beállítása SSL használatával.
sysconfig.d/*.conf
Az /etc/sysconfig/apache2 fájlból automatikusan előállított konfigurációs fájlok. Ne módosítsa ezeket a fájlokat –helyettük módosítsa az /etc/sysconfig/apache2 fájlt. Ne tegyen más konfigurációs fájlt ebbe a könyvtárba.
uid.conf
Azt határozza meg, mely felhasználó- és csoportazonosító alatt fusson az Apache. Ne módosítsa.
vhosts.d/*.conf
Ide kell kerülnie a virtuális gép beállításának. A könyvtár sablonfájlokat tartalmaz a virtuális gépek SSL-lel vagy anélkül történő beállításához. Minden .conf-ra végződő nevű fájl automatikusan bekerül az Apache konfigurációjába. Részletek: 28.2.2.1. - Virtuális gépek konfigurációja.
Az Apache kézi beállítása esetén a sima szöveges konfigurációs fájlokat kézzel kell módosítani a root felhasználó nevében.
A virtuális gép kifejezés az Apache-nak arra a képességére utal, hogy képes több URI-t (univerzális erőforrás-azonosítót) kiszolgálni ugyanarról a fizikai gépről. Ez azt jelenti, hogy több tartományt, tehát például a www.example.com és www.example.net tartományokat is képes kiszolgálni egyetlen fizikai gépen futó ugyanazon webkiszolgáló.
Bevált gyakorlat a virtuális gépek használata az adminisztráció megkönnyítése (hiszen csak egyetlen webkiszolgálót kell karbantartani) és a hardverköltségek leszorítása érdekében (nincs szükség külön kiszolgálóra minden egyes tartományhoz). A virtuális gépek lehetnek név alapúak, IP alapúak és port alapúak.
Az összes meglévő virtuális gép kilistázásához használja a httpd2 -S parancsot. Ennek kimenete az alapértelmezett kiszolgáló és az összes virtuális gép listája, IP-címeikkel és a portokkal együtt, amelyeken figyelnek. A lista ezenfelül tartalmaz egy bejegyzést mindegyik virtuális géphez, amely a konfigurációs fájlok helyét mutatja.
A virtuális gépek a YaST segítségével is beállíthatók (lásd: 28.2.3.1.4. - Virtuális gépek), de a konfigurációs fájlok kézzel is módosíthatók. Alapértelmezés szerint az openSUSE rendszerben található Apache úgy van előkészítve, hogy egy virtuális géphez az /etc/apache2/vhosts.d/ egy konfigurációs fájlja tartozik. A könyvtár összes .conf kiterjesztésű fájlja automatikusan bekerül a konfigurációba. Ebben a könyvtárban egy egyszerű sablon található a virtuális gépekhez (vhost.template vagy vhost-ssl.template az SSL támogatáshoz).
![]() | Mindig hozzon létre virtuális gépeket |
|---|---|
Célszerű mindig virtuális gépeket készíteni, még akkor is, ha a webkiszolgáló csak egyetlen tartományt szolgál ki. Ebben az esetben ugyanis nemcsak a tartományspecifikus beállítások kerülnek egy fájlba, hanem bármikor egyszerűen vissza lehet állni egy működő alapkonfigurációra a virtuális gép konfigurációs fájljának áthelyezésével, törlésével vagy átnevezésével. Ugyanezen okokból érdemes külön konfigurációs fájlokat készíteni az egyes virtuális gépekhez.
Név alapú virtuális gépek használatakor ajánlott egy alapértelmezett konfiguráció létrehozása, amely akkor kerül használatra, ha tartománynév nem illeszkedik a virtuális gép beállításaira. Az alapértelmezett virtuális gép az, amelyiknek a beállításai először töltődnek be. Mivel a konfigurációs fájlok sorrendjét a fájlnév határozza meg, ezért az alapértelmezett virtuális gép beállítását érdemes aláhúzás ( | |
A <VirtualHost></VirtualHost> szakasz tartalmazza az adott tartományra vonatkozó adatokat. Amikor az Apache egy kérést fogad egy klienstől egy már definiált virtuális gépre vonatkozóan, akkor az ebben a szakaszban található direktívákat fogja használni. Szinte minden direktíva használható virtuálisgép-környezetben. További részletek az Apache beállítási lehetőségeivel kapcsolatban: http://httpd.apache.org/docs/2.2/mod/quickreference.html.
Név alapú virtuális gépek használata esetén egy IP-címhez egynél több webhely is tartozhat. Az Apache a kliens által küldött HTTP-fejlécben található ''host'' mező alapján rendeli össze a kérést a virtuálisgép-definíciók között található megfelelő ServerName bejegyzéssel. Ha nincs megfelelő ServerName bejegyzés, akkor viszont az elsőként megadott virtuális gépet fogja használni alapértelmezésként.
A NameVirtualHost direktíva jelzi az Apache számára, hogy mely IP-címeken (és esetleg mely portokon) kell figyelnie a klienskérések HTTP-fejlécében a tartománynevet is. Ezt a lehetőséget az /etc/apache2/listen.conf konfigurációs fájlban kell beállítani.
Az első paraméter lehet egy teljesen megadott tartománynév, de célszerűbb az IP-címet használni. A második paraméter a portszám, amely elhagyható. Alapértelmezés szerint az Apache a 80-as portot használja, amelyet egyébként a Listen direktívával lehet beállítani.
A * helyettesítő karakter használható mind az IP-cím, mind a portszám esetében, és azt jelenti, hogy minden csatolón érkezhetnek kérések. Az IPv6-címeket szögletes zárójelekbe kell tenni.
28.1. példa - A név alapú VirtualHost bejegyzések fajtái¶
# NameVirtualHostIP-address[:Port]NameVirtualHost 192.168.3.100:80 NameVirtualHost 192.168.3.100 NameVirtualHost *:80 NameVirtualHost * NameVirtualHost [2002:c0a8:364::]:80
Név alapú virtuális gép beállításakor a nyitó VirtualHost címke paraméterként kapja a korábban a NameVirtualHost sorban beállított IP-címet vagy teljesen megadott tartománynevet. A NameVirtualHost direktívában korábban megadott portszám elhagyható.
A * helyettesítő karakter szintén használható az IP-cím helyett. Ez a szintaxis csak akkor használható, ha korábban helyettesítő karaktert használt, NameVirtualHost * módon. Ha IPv6-címeket használ, azokat szögletes zárójelekbe kell tenni.
28.2. példa - Név alapú VirtualHost direktívák¶
<VirtualHost 192.168.3.100:80> ... </VirtualHost> <VirtualHost 192.168.3.100> ... </VirtualHost> <VirtualHost *:80> ... </VirtualHost> <VirtualHost *> ... </VirtualHost> <VirtualHost [2002:c0a8:364::]> ... </VirtualHost>
Ha így állít be virtuális gépeket, akkor egy géphez több IP-címnek is kell tartoznia. Egy Apache-példány több tartományt is kiszolgál, amelyek mindegyikéhez különböző IP-cím tartozik.
A fizikai kiszolgálón minden egyes IP alapú virtuális géphez külön IP-címnek kell tartoznia. Ha a gépben fizikailag nincs több hálózati kártya, akkor virtuális hálózati csatolók (másodlagos IP-címek) is használhatók.
Az alábbi példában bemutatunk egy Apache-rendszert, amelyik az 192.168.3.100 IP-című gépen fut, de két további IP-címen (192.168.3.101 és 192.168.3.102) két tartományt szolgál ki. Egy külön VirtualHost blokkra van szükség mindegyik virtuális kiszolgálóhoz.
28.3. példa - IP alapú VirtualHost direktívák¶
<VirtualHost 192.168.3.101> ... </VirtualHost> <VirtualHost 192.168.3.102> ... </VirtualHost>
Itt a VirtualHost direktívák csak a 192.168.3.100 címtől eltérő csatolókhoz vannak megadva. Ha megad egy Listen direktívát a 192.168.3.100 címhez, akkor egy külön IP alapú virtuális gépet létre kell hozni, amelyik válaszol az adott csatolóra érkező HTTP-kérésekre – ellenkező esetben az Apache az (/etc/apache2/default-server.conf) fájlban megadott alapértelmezett direktívákat fogja használni.
Ahhoz, hogy a virtuális gép működjön, legalább az alábbi direktívákat be kell állítani minden egyes virtuális gép konfigurációjában. További részletek az /etc/apache2/vhosts.d/vhost.template sablonfájlban találhatók.
Kiszolgálónév
A teljesen megadott tartománynév, amelyen a gép megszólítható.
DocumentRoot
Annak a könyvtárnak az elérési útja, ahonnan az Apache-nak ki kell szolgálnia az adott gép fájljait. Biztonsági okokból alapértelmezés szerint tiltott a teljes fájlrendszerhez való hozzáférés, így ezt a könyvtárat külön engedélyezni kell egy Directory szakasszal.
ServerAdmin
A kiszolgáló rendszergazdájának e-mail címe. Ez a cím megjelenik például az Apache által előállított oldalakon.
ErrorLog
A virtuális gép hibanaplófájlja. Bár nem kötelező külön hibanaplót készíteni minden egyes virtuális géphez, mégis ez a szokásos gyakorlat, hiszen lényegesen megkönnyíti a hibakeresését. A /var/log/apache2/ az alapértelmezett könyvtár az Apache naplófájlok számára.
CustomLog
A virtuális gép hozzáférésinapló-fájlja. Bár nem kötelező külön hozzáférési naplót készíteni minden egyes virtuális géphez, ez a szokásos gyakorlat, mert megkönnyíti a gépenkénti hozzáférési statisztikák készítését. A /var/log/apache2/ az alapértelmezett könyvtár az Apache naplófájlok számára.
Amint feljebb már említettük, biztonsági okokból alapértelmezés szerint tiltott a teljes fájlrendszerhez való hozzáférés. Éppen ezért külön kell engedélyezni azokat a könyvtárakat, ahová az Apache által kiszolgálandó fájlok kerültek – például a DocumentRoot könyvtárat.
<Directory "/srv/www/www.example.com/htdocs"> Order allow,deny Allow from all </Directory>
A teljes konfigurációs fájl így néz ki:
28.4. példa - Alapszintű VirtualHost beállítások¶
<VirtualHost 192.168.3.100>
ServerName www.example.com
DocumentRoot /srv/www/www.example.com/htdocs
ServerAdmin webmaster@example.com
ErrorLog /var/log/apache2/www.example.com_log
CustomLog /var/log/apache2/www.example.com-access_log common
<Directory "/srv/www/www.example.com/htdocs">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>A webkiszolgáló a YaST-tal történő beállításához indítsa el a YaST-ot és válassza ki a +. A modul első indításakor megjelenik a , és feltesz néhány alapkérdést a kiszolgáló felügyeletével kapcsolatban. A varázsló befejezése után a párbeszédablak indul el minden egyes alkalommal, amikor elindítja a modult. További információkért lásd: 28.2.3.2. - HTTP-kiszolgáló beállítások.
A HTTP-kiszolgáló varázsló öt lépésből áll. A párbeszédablak utolsó lépésében beléphet a szakértői beállítások közé, ha még speciálisabb beállításokra van szükség.
Itt kell megadni a hálózati csatolókat és portokat, amelyeken az Apache figyelni fogja a bejövő kéréseket. A meglévő hálózati csatolók és IP-címeik tetszés szerinti kombinációja használható. Mindhárom tartomány (jól ismert portok, bejegyzett portok és dinamikus/privát portok) egyéb szolgáltatások által nem foglalt portjai használhatók. Az alapértelmezett beállítás a minden hálózati csatolón (IP-címen), a 80-as porton történő figyelés.
Jelölje meg a beállítást a webkiszolgáló által figyelt portok megnyitásához a tűzfalon. Erre szükség van ahhoz, hogy a webkiszolgáló valóban elérhető legyen a hálózaton (legyen akár LAN, WAN, akár a nyilvános internet). A port zárva tartásának csak olyan teszthelyzetekben van értelme, ahol senkinek nem kell kívülről elérnie a webkiszolgálót. Ha egynél több hálózati csatoló van a gépben, akkor kattintson a pontra és adja meg, mely csatoló(ko)n mely port(ok) legyen(ek) megnyitva.
Nyomja meg a gombot a beállítások folytatásához.
A részben lehet be- és kikapcsolni a webkiszolgáló által támogatandó parancsnyelveket. A többi modul be- és kikapcsolásának leírása: 28.2.3.2.2. - Kiszolgálómodulok. Kattintson a gombra a következő párbeszédablakra lépéshez.
Ezek a beállítások az alapértelmezett webkiszolgálóra vonatkoznak. Amint az a 28.2.2.1. - Virtuális gépek konfigurációja részben is olvasható, az Apache képes egyetlen fizikai gépről több virtuális gépet kiszolgálni. A konfigurációs fájlban elsőként megadott virtuális gépet szokás az alapértelmezett gépnek hívni. Minden egyes virtuális gép megörökli az alapértelmezett gép konfigurációját.
A gép beállításainak (más szavakkal, direktíváinak) módosításához válassza ki a táblázat megfelelő bejegyzését, majd kattintson a gombra. Új direktívák felvételéhez kattintson a gombra. Egy direktíva törléséhez válassza ki és kattintson a gombra.
Itt láthatók a kiszolgáló alapértelmezett beállításai.
Document Root
Annak a könyvtárnak az elérési útja, ahonnan az Apache kiszolgálja az adott gép fájljait. Az alapértelmezett hely az /srv/www/htdocs.
Alias
Az Alias direktívák használatával az URL-ek megfeleltethetők a fizikai fájlrendszer egyes helyeinek. Ez azt jelenti, hogy ha egy bizonyos útvonal kívül is esne a Document Root-ban megadott helyet, akkor is elérhető a fájlrendszer ezen része, az URL-t ennek megfeleltetve.
Az openSUSE alapértelmezett Alias /icons beállítása az /usr/share/apache2/icons könyvtárra mutat, innen veszi az Apache ikonjait a könyvtárindex-nézet megjelenítéséhez.
ScriptAlias
Az Alias direktívához hasonlóan, a ScriptAlias direktíva is egy bizonyos URL-t a fájlrendszer egy adott részéhez rendel. A különbség az, hogy a ScriptAlias esetén a célkönyvtár CGI-parancsfájlokat tartalmaz, vagyis a CGI-parancsfájlokat erről a helyről szabad csak végrehajtani.
Directory
A Directory direktívával egy sor olyan beállítást lehet megadni, amelyek csak a megadott könyvtárra vonatkoznak.
Itt vannak beállítva az /srv/www/htdocs/usr/share/apache2/icons és az /srv/www/cgi-bin könyvtárak hozzáférési és megjelenítési jellemzői. Nincs szükség az alapértelmezett értékek megváltoztatására
Include
Az include utasítással további konfigurációs fájlok adhatók meg. Két Include direktíva már előre be van állítva: az /etc/apache2/conf.d/ az a könyvtár, amely a külső modulok konfigurációs fájljait tartalmazza. Ezzel a beállítással a könyvtár minden .conf kiterjesztésű fájlja beágyazásra kerül. A második direktíva az jelenti, hogy az /etc/apache2/conf.d/apache2-manual.conf fájl, az apache2-manual konfigurációs fájl legyen beágyazva.
Kiszolgáló neve
Ez adja meg az alapértelmezett URL-t, amelyen a kliensek elérik a webkiszolgálót. Használja a webkiszolgáló elérésére szolgáló teljesen megadott tartománynevet (http://), vagy az IP-címét. Itt nem választhat teljesen önkényesen nevet – a kiszolgálónak ezen a néven kell „ismertnek” lennie.
FQDN/
Adminisztrátor e-mail címe
A kiszolgáló rendszergazdájának e-mail címe. Ez a cím megjelenik például az Apache által előállított oldalakon.
Az lépés befejezése után kattintson a gombra a beállítás folytatásához.
Ebben a lépésben a varázsló megjeleníti a már beállított virtuális gépek listáját (lásd: 28.2.2.1. - Virtuális gépek konfigurációja). Ha nem végzett kézi módosításokat a YaST HTTP varázslójának elindítása előtt, akkor itt nem látható virtuális gép.
Egy gép hozzáadásához kattintson a gombra. Megnyílik egy párbeszédablak, amelyben megadhatja a géppel kapcsolatos legfontosabb adatokat, mint például a , a (DocumentRoot) és az . A szolgál annak megadására, hogyan történjen a gép azonosítása (név vagy IP alapján). Adja meg a nevet vagy IP-címet a mezőben.
Nyomja meg a gombot a virtuálisgép-konfigurációs párbeszédablak második részére való továbblépéshez.
A virtuálisgép-konfiguráció második részében adhatja meg, hogy kíván-e CGI-parancsfájlokat használni, és ha igen, ezek melyik könyvtárban találhatók. Szintén itt lehet bekapcsolni az SSL használatát. Ha így tesz, akkor meg kell adni a tanúsítvány elérési útját is. Az SSL-lel és a tanúsítványokkal kapcsolatos további részletek: 28.6.2. - Apache beállítása SSL-hez. A paraméterben adhatja meg, hogy mely fájlt jelenítse meg a kiszolgáló, ha a kliens csak egy könyvtárat adott meg (az alapértelmezett érték az index.html). Írja be a kívánt fájlneveket (szóközzel elválasztva), ha ezt módosítani kívánja. A mezőben a felhasználók nyilvános könyvtárainak ~) tartalma tehető elérhetővé a kiszolgálón a user/public_html/http://www.example.com/~ címen.
felhasználó
![]() | Virtuális gépek létrehozása |
|---|---|
Virtuális gépeket nem lehet összevissza felvenni. Név alapú virtuális gépek használata esetén minden egyes gépnévnek feloldhatónak kell lennie a hálózaton. IP alapú virtuális gépek használata esetén minden egyes IP-címhez csak egy gépnév rendelhető. | |
Ez a varázsló utolsó lépése. Itt adhatja meg, hogy hogyan és mikor induljon az Apache kiszolgáló: rendszerindításkor, vagy kézzel. Szintén itt jelenik meg az eddig elvégzett beállítások rövid összefoglalója. Ha meg van elégedve a beállításokkal, akkor kattintson a gombra a beállítások befejezéséhez. Ha módosítani kíván valamit, akkor kattintson a gombra egészen addig, amíg a kívánt párbeszédablakhoz nem ér. A gomb a 28.2.3.2. - HTTP-kiszolgáló beállítások részben leírt párbeszédablakot nyitja meg.
A párbeszédablakban a varázslónál még részletesebben adhatók meg a beállítások (a varázsló egyébként is csak akkor fut le, ha az első alkalommal állítja be a webkiszolgálót). Négy lapból áll, amelyeket az alábbiakban mutatunk be. Itt semmilyen beállítás nem lép azonnal érvényre – a módosításokat előbb meg kell erősíteni a gombra kattintva. A gombra kattintás esetén kilép a konfigurációs modulból és elveti a változtatásokat.
A részben adja meg, hogy az Apache fusson-e () vagy le legyen állítva (). A részben a , , és gombok használatával vegye fel a címeket és portokat, amelyeken a kiszolgálónak elérhetőnek kell lennie. Az alapértelmezés az összes csatolón a 80-as port figyelése. A beállítást mindig engedélyezze meg, különben a webkiszolgálót nem lehet majd elérni kívülről. A port zárva tartásának csak olyan teszthelyzetekben van értelme, ahol senkinek nem kell kívülről elérnie a webkiszolgálót. Ha egynél több hálózati csatoló van a gépben, akkor kattintson a pontra és adja meg, mely csatoló(ko)n mely porto(k) legyenek megnyitva.
A részben tekintheti meg a hozzáférési naplót és a hibanaplót. Ez hasznos, ha tesztelni kívánja a beállításokat. A naplófájl egy külön ablakban nyílik meg, ahonnan újraindíthatja és újratöltheti a webkiszolgálót. Ennek részletes leírása: 28.3. - Az Apache elindítása és leállítása. Ezek a parancsok azonnal érvényre jutnak és naplóüzeneteik is azonnal megjelennek.
Az Apache2-modulok (bekapcsolt vagy kikapcsolt) állapotának módosításához kattintson az gombra. A gombra kattintva vehet fel egy új, már telepített, de még fel nem sorolt modult. Tudjon meg többet a modulokról a 28.4. - Modulok telepítése, aktiválása és beállítása című fejezetből.
Ezek a párbeszédablakok megegyeznek a már leírtakkal. További információ: 28.2.3.1.3. - Alapértelmezett gép és 28.2.3.1.4. - Virtuális gépek.
Ha a YaST-tal állította be (lásd: 28.2.3. - Az Apache beállítása a YaST segítségével), akkor az Apache a 3-as és 5-ös futási szinteken automatikusan elindul a rendszer indításakor, a 0, 1, 2. és 6. futási szinteken pedig le van állítva. Ez a viselkedés módosítható a YaST futásiszint-szerkesztőjével és a chkconfig parancssori eszközzel is.
Ha egy futó rendszeren kívánja az Apache szolgáltatást elindítani, leállítani vagy módosítani, akkor használja a /usr/sbin/rcapache2 parancsfájlt. Ezekről a parancsfájlokról további információ a következő helyen található16.2.2. - Init parancsfájlok. Az rcapache2 parancsnak a következő paramétereket lehet megadni:
status
Ellenőrzi, hogy az Apache el van-e indítva.
start
Ha még nem lenne elindítva, akkor elindítja az Apache kiszolgálót.
startssl
Ha még nem lenne elindítva, akkor elindítja az Apache kiszolgálót SSL-támogatással. További információ az SSL-támogatásról: 28.6. - Biztonságos webkiszolgáló beállítása SSL használatával.
stop
Leállítja az Apache kiszolgálót (a szülőfolyamat leállításával).
restart
Leállítja, majd újraindítja az Apache kiszolgálót. Ha még nem lett volna elindítva, akkor elindítja a webkiszolgálót.
try-restart
Leállítja az Apache-ot, és amennyiben futott, akkor újra is indítja.
reload vagy graceful
Leállítja a webkiszolgálót úgy, hogy az összes leágazott Apache-folyamatot értesíti, hogy leállás előtt még szolgálják ki a kéréseiket. Ahogy az egyes folyamatok elhalnak, újak indulnak helyettük, így végül az Apache teljesen „újraindul”.
![]() | Apache újraindítása üzemi környezetben |
|---|---|
Amennyiben módosítani kívánja az Apache beállításokat, anélkül, hogy az kapcsolatvesztéssel járjon, használja rcapache2 | |
restart-graceful
Elindít egy második webkiszolgálót, amely azonnal kiszolgálja az összes bejövő kérést. A webkiszolgáló előző példánya még a GracefulShutdownTimeout paraméternél megadott ideig kiszolgálja az összes meglévő kérést.
Az rcapache2 restart-graceful hasznos lehet egy új verzióra frissítésnél, vagy ha olyan beállításokat módosított, amelyek mindenképpen teljes újraindítást igényelnek. E paraméter használatával minimálisra csökkenthető a kiszolgáló leállása.
A GracefulShutdownTimeout paramétert be kell állítani, különben a restart-graceful egy szokásos újraindítást fog eredményezni. Nullára állítás esetén a kiszolgáló egészen addig vár, amíg az összes függőben lévő kérést ki nem szolgálja.
Az ilyen ''kellemes'' (graceful) újraindítás azonban lehet, hogy nem sikerül, ha az eredeti Apache-példánynak nem sikerül felszabadítania az összes szükséges erőforrást. Ebben az esetben a parancs egy "kellemes" leállást fog eredményezni.
stop-graceful
Leállítja a webkiszolgálót a GracefulShutdownTimeout paraméternél megadott idő után, annak érdekében, hogy a meglévő kéréseket még ki lehessen szolgálni.
A GracefulShutdownTimeout paramétert be kell állítani, különben a stop-graceful egy szokásos újraindítást fog eredményezni. Nullára állítás esetén a kiszolgáló egészen addig vár, amíg az összes függőben lévő kérést ki nem szolgálja.
configtest vagy extreme-configtest
A futó webkiszolgáló befolyásolása nélkül ellenőrzi a konfigurációs fájlok szintaxisának helyességét. Mivel ez az ellenőrzés megtörténik a kiszolgáló minden egyes indulásakor, újratöltésekor és újraindításakor, általában nincs szükség a teszt külön futtatására (ha ugyanis konfigurációs hiba van, akkor a webkiszolgáló indítása, újratöltése vagy újraindítása nem fog sikerülni). Az extreme-configtest paraméter a webkiszolgálót a nobody felhasználó nevében elindítja és ténylegesen be is tölti, így több hiba észlelhető. Ügyeljen azonban arra, hogy bár a konfigurációt betölti a program, az SSL-beállításokat nem fogja tudni vizsgálni, mivel a nobody felhasználó nem jogosult elolvasni az SSL-tanúsítványokat.
probe
Ellenőrzi, hogy van-e szükség újratöltésre (azt vizsgálja meg, hogy módosult-e a konfiguráció) és javaslatot tesz az rcapache2 parancs után használandó paraméterre.
server-status és full-server-status
Rövid ill. részletes állapotjelentést ír ki a kiszolgálóról. Használatához telepíteni kell a lynx vagy w3m csomagot, továbbá a mod_status modult is be kell kapcsolni. Ezenfelül az /etc/sysconfig/apache2 fájlban az APACHE_SERVER_FLAGS sorban fel kell venni a status paramétert is.
![]() | További jelzők |
|---|---|
Ha további jelzőket ad meg az rcapache2 parancsnak, akkor ezeket továbbítja a webkiszolgáló felé. | |
Az Apache szoftver modulárisan lett kialakítva: néhány alapfeladat kivételével mindent modulok végeznek. Ez egészen odáig megy, hogy még a HTTP-t is egy modul (http_core) dolgozza fel.
Az Apache-modulok befordíthatók a bináris Apache-fájlba összeszerkesztéskor, de betölthetők dinamikusan, futás közben is. A modulok dinamikus betöltéséről a 28.4.2. - Aktiválás és deaktiválás rész szól.
Az Apache-modulok négyféle kategóriába tartozhatnak:
Az alapmodulok alapértelmezés szerint be vannak fordítva az Apache-ba. Az openSUSE Apache kiszolgálójába csak a (többi modul betöltéséhez szükséges) mod_so és a http_core van befordítva. Minden más megosztott objektumként érhető el: ahelyett, hogy a bináris kiszolgálófájlban lennének benne, futás közben tölthetők be.
Általában a bővítésként megjelölt modulok benne találhatók az Apache-szoftvercsomagban, de nincsenek statikusan belefordítva a kiszolgálóba. openSUSE rendszereken ezek megosztott, az Apache-ba futás közben betölthető objektumokként érhetők el.
A külsőnek jelölt modulok nem részei a hivatalos Apache-disztribúciónak. Az openSUSE azonban tartalmaz néhányat
Az MPM-ek felelősek a webkiszolgálóhoz érkező kérések fogadásáért és kezeléséért, és ezek alkotják a webkiszolgáló szoftver magját.
Amennyiben az alapértelmezett telepítést követte a 28.1.2. - Telepítés fejezetben leírtak szerint, akkor a következő modulok már telepítve vannak: minden alap (base) és kiterjesztő (externsion) modul, a többprocesszoros modul Prefork MPM és a mod_php5, valamint a mod_python modulok.
További külső modulok telepítéséhez indítsa el a YaST-ot és válassza ki a + modult. Válassza ki a + menüpontot, és keresse ki az apache-t. Más egyéb csomagok mellett az eredménylistában megjelenik az összes rendelkezésre álló külső Apache-modul is.
Az egyes modulokat aktiválni és deaktiválni lehet kézzel vagy a YaST használatával. A YaST-ban található szkriptnyelv-modulok (PHP5, Perl és Phyton) engedélyezése és letiltása a 28.2.3.1. - HTTP-kiszolgáló varázsló fejezetben leírtaknak megfelelően. Az összes többi modul be- és kikapcsolásának módját a 28.2.3.2.2. - Kiszolgálómodulok rész írja le.
Ha inkább kézzel kívánja be- és kikapcsolni a modulokat, használja az a2enmod mod_foo vagy a2dismod mod_foo, parancsokat (ahol mod_foo a modul neve). Az a2enmod -l parancs kilistázza az összes éppen aktív modult.
![]() | Külső modulok konfigurációs fájlainak beágyazása |
|---|---|
Ha kézzel aktivált külső modulokat, akkor ügyeljen rá, hogy a konfigurációs fájljaik be legyenek töltve az összes virtuálisgép-konfigurációba. A külső modulok konfigurációs fájljai az | |
Az összes alap- és bővítőmodul részletesen le van írva az Apache dokumentációjában. Itt csak a legfontosabb modulok rövid leírását szerepeltetjük. Az egyes modulok részleteivel kapcsolatban tekintse meg a http://httpd.apache.org/docs/2.2/mod/ webhelyet.
Módszereket kínál parancsfájlok végrehajtására, amikor egy meghatározott MIME-típusú (például application/pdf) vagy meghatározott kiterjesztésű (például .rpm) fájlt, vagy meghatározott kérési móddal (például GET) kérnek. Ez a modul alapértelmezés szerint be van kapcsolva.
Alias (másodlagos név) és Redirect (átirányítás) direktívákat biztosít, amelyekkel egy adott URI egy adott könyvtárhoz rendelhető (Alias), vagy egy URL átirányítható egy másik helyre. Ez a modul alapértelmezés szerint be van kapcsolva.
A hitelesítési modulok különféle hitelesítési eljárásákat kínálnak: alapszintű hitelesítést a mod_auth_basic, vagy kivonat alapú hitelesítést a mod_auth_digest segítségével. Az Apache 2.2-ben a kivonat alapú hitelesítés egyelőre kísérletinek tekintendő.
A mod_auth_basic és mod_auth_digest kombinálható egy hitelesítésszolgáltató (mod_authn_*) modullal (például a mod_authn_file szövegfájl alapú hitelesítést biztosít) és egy engedélyezési (mod_authz_*) modullal (a mod_authz_user például a felhasználók engedélyeit szabályozza).
Ezzel kapcsolatban további információ a Hitelesítési HOWTO-ban olvasható (a http://httpd.apache.org/docs/2.2/howto/auth.html címen).
Az autoindex könyvtárlistákat készít, ha nem található külön indexfájl (például index.html). Az indexek megjelenése állítható. Ez a modul alapértelmezés szerint be van kapcsolva. A könyvtárak tényleges kilistázása azonban le van tiltva az Options direktíváal – írja felül ezt a beállítást a virtuálisgép-konfigurációban. A modul alapértelmezett konfigurációs fájlja az /etc/apache2/mod_autoindex-defaults.conf.
A mod_cgi szükséges CGI-parancsfájlok végrehajtásához. Ez a modul alapértelmezés szerint be van kapcsolva.
E modul használatával az Apache beállítható, hogy menet közben, még kiszolgálás előtt tömörítsen bizonyos fájltípusokat.
A mod_dir biztosítja a DirectoryIndex direktívát, amellyel beállítható, hogy egy könyvtár lekérésekor mely fájlok kerüljenek automatikusan kiszolgálásra (az alapértelmezés az index.html). Szintén ez biztosít automatikus átirányítást a megfelelő URl-ra, ha a lekért könyvtár végén nem szerepel a lezáró törtvonal. Ez a modul alapértelmezés szerint be van kapcsolva.
A CGI-parancsfájloknak vagy SSI-oldalaknak átadott környezetet szabályozza. A httpd folyamatot meghívó parancsértelmezőben beállíthatók és kikapcsolhatók, illetve onnan átadhatók környezeti változók. Ez a modul alapértelmezés szerint be van kapcsolva.
A mod_expires használatával szabályozható, hogy a proxy és böngésző gyorsítótárak milyen sűrűn frissítsék a dokumentumokat egy Expires fejléc küldésével. Ez a modul alapértelmezés szerint be van kapcsolva.
A mod_include lehetővé teszi kiszolgálóoldali beágyazások (Server Side Includes, SSI) használatát, amely egy alapszintű megoldás a HTML-oldalak dinamikus előállítására. Ez a modul alapértelmezés szerint be van kapcsolva.
Részletes áttekintést ír ki a kiszolgáló konfigurációjáról a http://localhost/server-info/ speciális címen. Biztonsági okokból ennek az URL-nek az elérését feltétlenül korlátozni kell. Alapértelmezés szerint egyedül a localhost jogosult elérni ezt az URL-t. A mod_info beállításai az /etc/apache2/mod_info.conf fájlban találhatók..
Ezzel a modullal lehet beállítani az Apache naplófájljainak a külalakját. Ez a modul alapértelmezés szerint be van kapcsolva.
A fájlnevek kiterjesztése alapján a mime modul megbizonyosodik arról, hogy a fájlok a megfelelő (tehát például HTML dokumentumok esetében text/html) MIME-fejléccel legyenek elküldve. Ez a modul alapértelmezés szerint be van kapcsolva.
A tartalom egyeztetéséhez szükséges. További információ a http://httpd.apache.org/docs/2.2/content-negotiation.html oldalon olvasható. Ez a modul alapértelmezés szerint be van kapcsolva.
A mod_alias funkcióit biztosítja, de többféle lehetőséggel és nagyobb rugalmassággal. A mod_rewrite használatával többféle szabály, kérési fejlécek és még sokminden más alapján lehet átirányítani az URL-eket.
A klienstől érkező kérés részletei, például a kliens által elküldött böngészőazonosító vagy a kliens IP-címe alapján állít be környezeti változókat. Ez a modul alapértelmezés szerint be van kapcsolva.
A mod_speling megkísérli automatikusan korrigálni az URL-ek elgépeléseit, például a véletlen nagybetűket.
Titkosított kapcsolatot létesít a webkiszolgáló és a kliensek között. Részletek: 28.6. - Biztonságos webkiszolgáló beállítása SSL használatával. Ez a modul alapértelmezés szerint be van kapcsolva.
A kiszolgáló tevékenységével és teljesítményével kapcsolatos adatokat jelenít meg a http://localhost/server-status/ speciális címen. Biztonsági okokból ennek az URL-nek az elérését feltétlenül korlátozni kell. Alapértelmezés szerint egyedül a localhost jogosult elérni ezt az URL-t. A mod_status beállításai az /etc/apache2/mod_status.conf fájlban találhatók.
A mod_suexec lehetővé teszi a CGI-parancsfájlok egy másik felhasználó és csoport nevében történő futtatását. Ez a modul alapértelmezés szerint be van kapcsolva.
Lehetővé teszi a ~ alatti felhasználóspecifikus könyvtárak használatát. Az user/UserDir direktívát meg kell adni a konfigurációban. Ez a modul alapértelmezés szerint be van kapcsolva.
Az openSUSE kétféle többprocesszoros modul (MPM) használatát biztosítja az Apache-hoz:
A prefork MPM egy nem szálkezelő, előre elágaztatott .webkiszolgálót valósít meg. Ennek hatására a webkiszolgáló úgy viselkedik, mint az Apache 1.x verziója: elszigetel minden egyes kérést és úgy kezeli őket, hogy külön leszármazott folyamatot indít a kiszolgálásukra. Ily módon az esetleg problémát okozó kérések nincsenek hatással a többire és megakadályozzák a webkiszolgáló lefagyását.
Miközben azonban jobb stabilitást biztosít a folyamat alapú megközelítés révén, a prefork MPM jóval több rendszererőforrást használ el, mint párja, a worker MPM. UNIX alapú operációs rendszereken a prefork MPM számít az alapértelmezett MPM-nek.
![]() | A jelen dokumentumban tárgyalt MPM-ek |
|---|---|
A jelen dokumentumban feltételezzük, hogy az Apache kiszolgálót a prefork MPM-mel használják. | |
A worker MPM egy többszálú webkiszolgálót valósít meg. A szál a folyamatnak egy „egyszerűbb” fajtája. Ha szálakat használ folyamatok helyett, kevesebb erőforrást emészt fel a rendszer. Ahelyett, hogy leszármazott folyamatokat indítana, a worker MPM a kiszolgálófolyamatok szálait használva szolgálja ki a kéréseket. Az előre elágaztatott leszármazott folyamatok többszálúak. E megközelítés használatával az Apache jobb teljesítményt ér el, mivel kevesebb rendszer-erőforrást használ, mint a prefork MPM.
A legnagyobb hátrányok egyike azonban a worker MPM stabilitása: ha egy szállal baj történik, az a folyamat összes szálát befolyásolja. A legrosszabb esetben a teljes kiszolgáló összeomolhat. Különösen akkor, ha CGI-t használnak Apache alatt és nagy a terhelés, különféle belső kiszolgálóhibák jelentkezhetnek, mivel a szálak nem tudnak kommunikálni a rendszer erőforrásaival. Másik érv a worker MPM használata ellen, hogy nem minden Apache-modul képes szálkezelésre, és emiatt nem használható együtt a worker MPM-mel.
![]() | PHP-modulok használata az MPM-ekkel |
|---|---|
Nem minden PHP-modul képes szálkezelésre. A worker MPM használata a mod_php modullal együtt határozottan ellenjavallt. | |
Alább felsoroljuk az openSUSE összes külső modulját. A modul dokumentációja a jelzett könyvtárban található.
Képessé teszi az Apache kiszolgálótt, hogy a mod_php5 és mod_perl modulok által kezelt CGI-parancsfájlokat a Novell AppArmor segítségével elszigetelje.
Csomagnév: apache2-mod_apparmor |
| További információ: Part “Confining Privileges with Novell AppArmor” (↑Security Guide) |
A mod_mono használatával a kiszolgáló ASP.NET oldalak futtatására is képessé válik.
Csomagnév: apache2-mod_mono |
Konfigurációs fájl: /etc/apache2/conf.d/mod_mono.conf |
A mod_perl használatával a Perl parancsfájlok egy beépített értelmezővel futtathatók. A kiszolgálóba épített állandó értelmező révén nincs szükség állandóan egy külső értelmező elindítására, és minden alkalommal a Perl indulásának kivárására.
Csomagnév: apache2-mod_perl |
Konfigurációs fájl: /etc/apache2/conf.d/mod_perl.conf |
További információ: /usr/share/doc/packages/apache2-mod_perl |
A PHP egy kiszolgálóoldali, többplatformos, HTML-be ágyazott parancsnyelv.
Csomagnév: apache2-mod_php5 |
Konfigurációs fájl: /etc/apache2/conf.d/php5.conf |
További információ: /usr/share/doc/packages/apache2-mod_php5 |
A mod_python segítségével lényegesen jobb teljesítménnyel ágyazható be a Python az Apache HTTP-kiszolgálóba, és rugalmasabban alakíthatók ki a webes alkalmazások.
Csomagnév: apache2-mod_python |
További információ: /usr/share/doc/packages/apache2-mod_python |
A mod_tidy minden egyes kimenő HTML-oldalt ellenőriz a TidyLib alapján. Ellenőrzési hiba esetén egy hibalistát tartalmazó oldal jelenik meg. Ellenkező esetben az eredeti HTML oldal kerül kiszolgálásra.
Csomagnév: apache2-mod_tidy |
Konfigurációs fájl: /etc/apache2/mod_tidy.conf |
További információ: /usr/share/doc/packages/apache2-mod_tidy |
Képzett felhasználó ki is bővíthetik az Apache funkcionalitását egyedi modulok írásával. Apache-modulok fejlesztéséhez, illetve külső fejlesztésű modulok lefordításához szükség van az apache2-devel csomagra, valamint a megfelelő fejlesztőeszközökre. Az apache2-devel tartalmazza az apxs2 eszközöket is, amelyekre szükség van,ha további modulokat akar készíteni az Apache-hoz.
Az apxs2 teszi lehetővé a forráskódú modulok lefordítását és telepítését (beleértve a konfigurációs fájlok megfelelő módosításait is), az Apache-ba futási időben betölthető, ún. dinamikus megosztott objektumok (DSO-k) készítését.
Az apxs2 bináris fájljai az /usr/sbin könyvtárban találhatók.
Az /usr/sbin/apxs2 segítségével bármely MPM alatt használható bővítőmodulok készíthetők. A telepítési helye az /usr/lib/apache2.
Az /usr/sbin/apxs2-prefork segítségével a prefork MPM alatt használható bővítőmodulok készíthetők. A telepítési helye az /usr/lib/apache2-prefork.
Az /usr/sbin/apxs2-worker segítségével a worker MPM alatt használható bővítőmodulok készíthetők. A telepítési helye az /usr/lib/apache2-worker.
A modul forráskódból történő telepítéséhez és aktiválásához a következő parancsot kell használni:
cd /path/to/module/source; apxs2 -cia
mod_foo.c
ahol a -c összefordítja a modult, a -i telepíti a -a pedig aktiválja. Az apxs2 egyéb paramétereit az apxs2(1) kézikönyvoldala írja le.
Az Apache Common Gateway Interface (CGI) csatolójával dinamikus tartalom is előállítható különféle programokkal vagy parancsfájlokkal, amelyeket általában CGI-parancsfájlok néven szokás emlegetni. CGI-parancsfájlok bármilyen programozási nyelven írhatók. Leggyakrabban a Perlhez és PHP-hoz hasonló parancsnyelveket használnak e célra.
Ahhoz, hogy az Apache kiszolgálja a CGI-parancsfájlok által előállított tartalmat, a mod_cgi modult aktiválni kell. Szükség van a mod_alias-ra is. Alapértelmezés szerint mindkét modul be van kapcsolva. A modulok aktiválásának részletei: 28.4.2. - Aktiválás és deaktiválás.
![]() | CGI-biztonság |
|---|---|
A CGI-parancsfájlok végrehajtásának engedélyezése potenciális biztonsági rést jelent a kiszolgálón. További információ: 28.7. - Biztonsági problémák elkerülése. | |
openSUSE rendszereken a CGI-parancsfájlok végrehajtása kizárólag a /srv/www/cgi-bin/ könyvtárból engedélyezett. Ez a hely viszont már be is van előre állítva a CGI-parancsfájlok futtatására. Ha virtuális gépeket használ (lásd 28.2.2.1. - Virtuális gépek konfigurációja) és a parancsfájlokat a géphez tartozó könyvtárba kívánja helyezni, akkor ezt a könyvtárat előbb fel kell oldani és be kell állítani.
28.5. példa - Virtuális gépek beállítása CGI-hez¶
ScriptAlias /cgi-bin/ "/srv/www/www.example.com/cgi-bin/"<Directory "/srv/www/www.example.com/cgi-bin/"> Options +ExecCGI
AddHandler cgi-script .cgi .pl
Order allow,deny
Allow from all </Directory>
Azt jelzi az Apache számára, hogy a könyvtárban található minden fájlt tekintsen CGI-parancsfájlnak. | |
Engedélyezi a CGI-parancsfájlok végrehajtását | |
Azt jelzi a kiszolgáló számára, hogy a .pl és .cgi kiterjesztésű fájlokat tekintse CGI-parancsfájloknak. Módosítsa igényei szerint. | |
Az |
A CGI-programozás eltér annyiban a "szokásos" programozástól, hogy a CGI-programokat és -parancsfájlokat egy MIME-Type fejlécnek kell megelőznie, például egy ilyennek: Content-type: text/html. A kliens megkapja ezt a fejlécet, hogy tisztában legyen vele, milyen típusú tartalom is érkezik ezután. Másodszor, a parancsfájl kimenete valami olyan kell, hogy legyen, amit a kliens (jellemzően egy webböngésző) megért – vagyis elsősorban HTML, esetleg sima szöveg vagy például egy kép.
Az Apache csomag része egy egyszerű példaparancsfájl, az /usr/share/doc/packages/apache2/test-cgi. Ez néhány környezeti változó tartalmát írja ki egyszerű szövegként. Másolja át ezt a parancsfájlt akár az /srv/www/cgi-bin/ könyvtárba, akár a virtuális gép parancsfájl-könyvtárába (/srv/www/www.example.com/cgi-bin/) és nevezze át test.cgi névre.
A webkiszolgáló számára elérhető fájlok tulajdonosának a root felhazsnálónak kell lennie. Ezzel kapcsolatos további információ a 28.7. - Biztonsági problémák elkerülése fejezetben található . Mivel a webkiszolgáló más felhasználó nevében fut, a CGI-parancsfájloknak mindenki által olvashatónak és végrehajthatónak kell lenniük. Váltson át a CGI-könyvtárba, és adja ki a chmod 755 test.cgi parancsot a megfelelő jogosultságok biztosításához.
Most már beírhatja a böngészőbe a http://localhost/cgi-bin/test.cgi vagy a http://www.example.com/cgi-bin/test.cgi címet. Meg kell, hogy jelenjen a „CGI/1.0 test script report” oldal.
Ha nem jelenik meg a tesztprogram kimenete, csak egy hibaüzenet látszik, akkor ellenőrizze az alábbiakat:
CGI-hibaelhárítás
Újratöltötte-e a kiszolgálót a konfiguráció módosítása után? Ellenőrizze ezt az rcapache2 probe paranccsal.
Ha egyéni CGI-könyvtárat állított be, helyesek-e a beállítások? Ha nem biztos benne, próbálja ki a parancsfájlt az alapértelmezett CGI-könyvtárral (/srv/www/cgi-bin/) és érje el a http://localhost/cgi-bin/test.cgi címen.
Rendben vannak-e a fájljogosultságok? Váltson át a CGI-könyvtárba, és adja ki az ls -l test.cgi parancsot. A kimenetnek így kell kezdődnie:
-rwxr-xr-x 1 root root
Győződjön meg róla, hogy a parancsfájl nem tartalmaz programozási hibákat. Ha a test.cgi-t használja, ez nem fordulhat elő, de ha saját programokat ír, mindig győződjön meg róla, hogy azok hibátlanul működnek.
Amikor bizalmas adatok, például hitelkártyaszámok kerülnek továbbításra a webkiszolgáló és a kliens között, akkor mindenképpen kívánatos egy biztonságos, titkosított, hitelesített kapcsolat használata. A mod_ssl erős titkosítást biztosít és az SSL (Secure Sockets Layer), illetve TLS (Transport Layer Security) protokollok használatával védi a webkiszolgáló és a kliens közötti HTTP-kommunikációt. Az SSL/TSL használata esetén a webkiszolgáló és a kliens között privát kapcsolat jön létre. Garantált az adatok integritása, és mind a kliens, mind a kiszolgáló képes ellenőrizni a másik hitelességét.
Ehhez a kiszolgáló, még mielőtt bármilyen URL-re válaszolna, egy SSL-tanúsítványt küld, benne a kiszolgáló érvényes azonosságával. Ezzel igazolja, hogy a kiszolgáló valóban a helyes végpontja a kommunikációnak. Ezenfelül a tanúsítvány használatával titkosított kapcsolat jön létre a kliens és a kiszolgáló között, így a nyílt szövegű adatok szabadon továbbíthatók a felfedés kockázata nélkül.
A mod_ssl does nem maga valósítja meg az SSL/TSL protokollokat, csupán közvetítőként működik közre az Apache és egy SSL-programkönyvtár között. Az openSUSE rendszerben ez utóbbi az OpenSSL programkönyvtár. Az OpenSSL az Apache mellett automatikusan telepítésre kerül.
A mod_ssl használatának legészrevehetőbb jellemzője, hogy az URL-ek https://-sel kezdődnek, nem http://-vel.
![]() | Példatanúsítvány |
|---|---|
Egy példatanúsítvány az „Snake Oil” nevű elképzelt céghez a | |
Az SSL/TSL használatához a webkiszolgálón szükség van egy SSL-tanúsítványra. A tanúsítvány a webkiszolgáló és a kliens közötti hitelesítés során játszik szerepet, ennek alapján azonosíthatók az egyes felek egyértelműen. A tanúsítvány integritásának biztosítása érdekében azt egy olyan félnek kell aláírnia, amelyben minden felhasználó megbízik.
A létrehozható tanúsítványoknak három fajtája van: „üres” (dummy) tanúsítványok kizárólag teszteléshez, önállóan aláírt tanúsítványok azon felhasználók számára, akik megbíznak Önben, illetve az egy független, széles körben ismert és elfogadott tanúsítványhatóság (CA) által aláírt tanúsítványok.
A tanúsítványok előállítása két lépésből álló folyamat. Először egy saját kulcs készül a tanúsítványhatóság számára; utána a kiszolgálótanúsítvány ezzel a kulccsal lesz aláírva.
![]() | További információk |
|---|---|
Az SSL/TSL fogalmaival és meghatározásaival kapcsolatos további részletek a http://httpd.apache.org/docs/2.2/ssl/ssl_intro.html címen olvashatók. | |
Az üres tanúsítványok előállítása igen egyszerű. Mindössze meg kell hívni az /usr/bin/gensslcert parancsfájlt. Ez létrehozza, vagy felülírja az alábbi fájlokat. A tanúsítvány finomhangolásához a gensslcert beállításai használhatók. További információért írja be a /usr/bin/gensslcert -h parancsot.
/etc/apache2/ssl.crt/ca.crt
/etc/apache2/ssl.crt/server.crt
/etc/apache2/ssl.key/server.key
/etc/apache2/ssl.csr/server.csr
/root/.mkcert.cfg
A ca.crt egy másolata bekerül az /srv/www/htdocs/CA.crt helyre is, letöltéshez.
![]() | Csak teszteléshez |
|---|---|
Éles rendszeren nem szabad üres tanúsítványt használni. Kizárólag tesztelési célokat szolgál. | |
Ha egy intraneten vagy felhasználók meghatározott köre számára hoz létre biztonságos webkiszolgálót, akkor elegendő lehet, ha csak a saját tanúsítványhatóság (CA) által aláírt tanúsítványt használ.
Az önállóan aláírt tanúsítványok létrehozása egy interaktív, kilenclépéses folyamat. Váltson át az /usr/share/doc/packages/apache2 könyvtárba, és futtassa le az alábbi parancsot: ./mkcert.sh make --no-print-directory /usr/bin/openssl /usr/sbin/ custom. Ne próbálja meg ezt a parancsot más helyről futtatni. A program egy sor kérdést jelenít meg, amelyekre válaszolni kell.
Eljárás 28.4. Önállóan aláírt tanúsítvány előállítása az mkcert.sh használatával¶
Válassza ki a tanúsítványokhoz használt aláírási algoritmust
Érdemes az RSA-t (R, ez az alapértelmezés) választani, mert néhány régebbi böngészőnek gondjai vannak a DSA-val.
RSA saját kulcs előállítása a CA számára (1024 bit)
Nincs szükség egyéb beavatkozásra.
X.509 tanúsítvány aláírási kérés előállítása a CA számára
Itt kell létrehozni a CA megkülönböztetett nevét. Ehhez meg kell válaszolni néhány kérdést, például meg kell adni az ország és a szervezet nevét. Érvényes adatokat adjon meg, mert mindez később látszani fog a tanúsítványban. Nem muszáj minden kérdésre válaszolni. Ha valamelyik nem alkalmazható, vagy üresen kívánja hagyni, akkor adjon meg egy „.” karaktert válaszul. Az általános név (common name) a CA-nak magának a neve – célszerűen valami értelmes nevet adjon meg, például azt, hogy Futrimpex Kft. CA (ha például így hívják a céget).
![]() | A CA közös neve |
|---|---|
A CA közös nevének különböznie kell a kiszolgáló közös nevétől, ezért ebben a lépésben nem jó a teljes gépnevet használni. | |
X.509 tanúsítvány előállítása a CA számára, saját maga által aláírva
Válassza a 3-as (az alapértelmezett) tanúsítványverziót.
RSA saját kulcs előállítása a kiszolgáló számára (1024 bit)
Nincs szükség egyéb beavatkozásra.
X.509 tanúsítvány aláírási kérés előállítása a kiszolgáló számára
Itt hozza létre a kiszolgáló megkülönböztetett nevét. A kérdések szinte tökéletesen megegyeznek azokkal, amelyeket a CA megkülönböztetett nevénél megválaszolt. Az itt beírt adatok a webkiszolgálóra vonatkoznak, és nem kell feltétlenül megegyezniük a CA adataival (lehet például, hogy a kiszolgáló valahol másutt van fizikailag).
![]() | Általános név választása |
|---|---|
Az itt megadott általános név a biztonságos kiszolgáló teljesen megadott állomásneve kell, hogy legyen (tehát például www.example.com). Ha nem ezt adja meg, akkor a böngésző a kiszolgáló elérésekor figyelmeztetést fog kiírni, hogy a tanúsítvány nem felel meg a kiszolgálónak. | |
A saját CA által aláírt X.509 tanúsítvány előállítása
Válassza a 3-as (az alapértelmezett) tanúsítványverziót.
A CA saját RSA-kulcsának titkosítása egy jelszóval a biztonság érdekében
Határozottan javasolt a CA saját kulcsát titkosítani egy jelszóval, ezért ebben a lépésben Y-nal válaszoljon és adjon meg egy jelszót.
A kiszolgáló saját saját RSA-kulcsának titkosítása egy jelszóval a biztonság érdekében
Ha a kiszolgáló kulcsát is titkosítja egy jelszóval, akkor ezt a jelszót minden egyes alkalommal meg kell majd adnia, amikor elindítja a webkiszolgálót. Ez megnehezíti a webkiszolgáló automatikus indítását a rendszer indításakor vagy a webkiszolgáló újraindításakor. Éppen ezért a szokásos válasz erre a kérdésre az N. Ne feledje ugyanakkor, hogy ha nincs jelszóval titkosítva, akkor ez a kulcs védtelen, ezért győződjön meg róla, hogy csak az arra jogosult személyek férhetnek hozzá a kulcshoz.
![]() | A kiszolgáló kulcsának titkosítása |
|---|---|
Ha úgy döntött, hogy titkosítja jelszóval a kiszolgáló kulcsát, akkor növelje meg az | |
A parancsfájl eredményoldalán megjelenik az előállított kulcsok és tanúsítványok listája. Szemben azzal, amit a parancsfájl állít, a fájlok nem a helyi conf könyvtárban jöttek létre, hanem a megfelelő helyen, az /etc/apache2/ könyvtárban.
Az utolsó lépés a CA-tanúsítványfájl átmásolása az /etc/apache2/ssl.crt/ca.crt helyről egy olyan helyre, ahol a felhasználók elérhetik és felvehetik az ismert és megbízható CA-k közé webböngészőikben. Ellenkező esetben a böngésző panaszkodni fog, hogy a tanúsítványt egy ismeretlen hatóság állította ki. A tanúsítvány egy évig érvényes.
![]() | Önállóan aláírt tanúsítványok |
|---|---|
Csak olyan webkiszolgálón használjon önállóan aláírt tanúsítványt, amelyet olyan emberek érnek el, akik megbíznak Önben és elfogadják tanúsítványhatóságnak. Egy nyilvános webáruházban például nem javasolt ilyen tanúsítványt használni. | |
Számos hivatalos tanúsítványhatóság létezik, amely vállalja a tanúsítványok aláírását. A tanúsítványt egy megbízható harmadik fél írja alá, ettől megbízható. A nyilvánosan működő webkiszolgálók általában ilyen, hivatalos tanúsítványt használnak.
A legismertebb hivatalos CA-k a Thawte (http://www.thawte.com/) és a Verisign (http://www.verisign.com). Ezek és más CA-k be is vannak építve az összes böngészőbe, úgyhogy az általuk aláírt tanúsítványokat a böngészők automatikusan elfogadják.
Egy hivatalosan aláírt tanúsítvány kérésekor az ember nem a tanúsítványt küldi el a CA-nak. Helyette tanúsítvány-aláírási kérést (Certificate Signing Request, CSR) kell küldeni. Egy CSR létrehozásához az /usr/share/ssl/misc/CA.sh -newreq parancsfájlt kell meghívni.
A parancsfájl először bekér egy jelszót, amellyel titkosítani fogja a CSR-t. Ezután bekéri a megkülönböztetett nevet. Ehhez meg kell válaszolni néhány kérdést, például meg kell adni az ország és a szervezet nevét. Érvényes adatokat adjon meg, mert mindez később látszani fog a tanúsítványban és le is ellenőrzik. Nem muszáj minden kérdésre válaszolni. Ha valamelyik nem alkalmazható, vagy üresen kívánja hagyni, akkor adjon meg egy „.” karaktert válaszul. Az általános név (common name) a CA-nak magának a neve – célszerűen valami értelmes nevet adjon meg, például azt, hogy Futrimpex Kft. CA (ha például így hívják a céget). Utoljára egy ellenőrző jelszót és egy alternatív cégnevet kell megadni.
A CSR ugyanabba a könyvtárba kerül, mint amelyikből a parancsfájlt meghívta. A fájl neve newreq.pem lesz.
Az SSL- és TLS-kérések alapértelmezett portszáma a webkiszolgáló oldalán a 443-as. Egy „normál”, a 80-as porton figyelő Apache és egy, a 443-as porton figyelő SSL/TLS-es Apache között nincs ütközés. Valójában a HTTP és a HTTPS akár ugyanazon az Apache-példányon is futtatható. Általában különböző virtuális gépeket állítanak be a 80-as és a 443-as portokhoz a virtuális kiszolgálók elkülönítéséhez.
![]() | Tűzfal beállítása |
|---|---|
Ne felejtse el kinyitni a 443-as portot a tűzfalon az SSL-es Apache számára. Ez elvégezhető a YaST-tal is, a Section “Configuring the Firewall with YaST” (Chapter 14, Masquerading and Firewalls, ↑Security Guide) részben leírt módon. | |
A globális kiszolgáló beállításban alapértelmezésként az SSL-modul engedélyezve van. Amennyiben az adott gépen le van tiltva, akkor a a2enmod ssl paranccsal lehet engedélyezni. Az SSL teljes aktiválásához a kiszolgálót az „SSL” beállítással kell indítani. Ehhez az a2enflag SSL parancsot kell használni. Ha úgy döntött, hogy jelszóval védi a kiszolgálótanúsítványt, akkor kellő mértékben növelje meg az APACHE_TIMEOUT értékét a /etc/sysconfig/apache2 fájlban ahhoz, hogy legyen ideje beírni a jelszót az Apache indulásakor. Indítsa újra a kiszolgálót a módosítások érvényre juttatásához. Most nem elegendő az újratöltés.
A virtuálisgép-konfigurációs könyvtárban van egy sablonfájl (/etc/apache2/vhosts.d/vhost-ssl.template) SSL-specifikus direktívákkal, megjegyzésekkel bőségesen ellátva. A virtuális gépek általános beállításaival kapcsolatban forduljon a 28.2.2.1. - Virtuális gépek konfigurációja részhez.
Első lépésként másolja át a sablontfájlt az /etc/apache2/vhosts.d/ fájlba és módosítsa igény szerint. Általában elegendő az alábbi értékeket módosítani:
sajatSSL-host.conf
DocumentRoot
ServerName
ServerAdmin
ErrorLog
TransferLog
![]() | Név alapú virtuális gépek és SSL |
|---|---|
Csupán egyetlen IP-címmel rendelkező kiszolgálón nem lehet több SSL-es virtuális gépet futtatni. Beállítani ugyan be lehet egy ilyen rendszert, de az ezt meglátogató felhasználók minden egyes alkalommal figyelmeztető üzenetet fognak kapni, hogy a tanúsítvány nem egyezik a kiszolgáló nevével. Minden egyes SSL-re felkészített tartománynak saját IP-címmel kell rendelkeznie ahhoz, hogy érvényes SSL-tanúsítvánnyal tudjon kommunikálni. | |
A nyilvános interneten működő webkiszolgálók folyamatos felügyeletet igényelnek. Elkerülhetetlenül fellépnek biztonsági problémát, akár a szoftverből, akár a véletlen félrekonfigurálásból adódóan. Az alábbiakban néhány ötletet szeretnénk adni az elkerülésükhöz.
Amikor sérülékenységeket találnak az Apache szoftverben, a SUSE biztonsági tanácsot ad ki. Ebben leírja a sérülékenységek kijavításának módját, amelyet a lehető leghamarabb el kell végezni. A SUSE biztonsági bejelentések az alábbi címeken érhetők el:
Alapértelmezés szerint az openSUSE rendszerben a DocumentRoot könyvtár (/srv/www/htdocs) és a CGI-könyvtár (/srv/www/cgi-bin) a root felhasználóhoz és csoporthoz tartoznak. Ezeket a jogosultságokat nem célszerű megváltoztatni. Ha a könyvtárak bárki által írhatók lennének, akkor akármelyik felhasználó rakhatna beléjük fájlokat. Utána pedig előfordulhat, hogy az Apache végrehajtaná ezeket a fájlokat a wwwrun felhasználó jogosultságával, és így a felhasználónak a más szándék ellenére hozzáférést engedne a fájlrendszer erőforrásaihoz. Éppen ezért az /srv/www alkönyvtáraiba helyezze el a virtuális gépek DocumentRoot és CGI-könyvtárait, és gondoskodjon róla, hogy ezek a könyvtárak és fájlok a root felhasználóhoz és csoporthoz tartozzanak.
Alapértelmezés szerint a teljes fájlrendszer elérése le van tiltva az /etc/apache2/httpd.conf fájlban. Ezeket a direktívákat ne írja felül; engedélyezze külön-külön az Apache által elérni szükséges könyvtárakat. Ennek részletes leírása: 28.2.2.1.3. - Virtuális gépek alapszintű beállításai. Ily módon garantálható, hogy semmilyen kritikus fájl (például jelszavakat tároló, vagy rendszerkonfigurációs fájl) nem érhető el kívülről.
A Perl, PHP, SSI és más programozási nyelveken írott interaktív parancsfájlok lényegében tetszés szerinti parancsokat végrehajthatnak, ezért általánosságban biztonsági kockázatot jelentenek. A kiszolgálón végrehajtott parancsfájlokat csak a kiszolgáló rendszergazdája által megbízhatónak tartott forrásokból szabad telepíteni – általában nem túl jó ötlet engedni a felhasználóknak, hogy mindenféle parancsfájlt végrehajthassanak. Szintén célszerű biztonsági szempontból megvizsgálni a parancsfájlokat.
A parancsfájlok felügyeletének megkönnyítése érdekében bevált gyakorlat korlátozni a CGI-parancsfájlok végrehajtását néhány könyvtárra és nem engedélyezni őket globálisan. Ennek beállítására a ScriptAlias és Option ExecCGI direktívák használhatók. Az openSUSE alapértelmezett konfigurációja nem engedi a CGI-parancsfájlok végrehajtását tetszés szerinti helyről.
Minden CGI-parancsfájl ugyanazon felhasználó nevében fut, ezért a különböző parancsfájlok lehetséges, hogy megzavarják egymást. A mod_suEXEC modul lehetővé teszi a CGI-parancsfájlok egy másik felhasználó és csoport nevében történő futtatását.
A felhasználói könyvtárak (a mod_userdir vagy a mod_rewrite segítségével történő) engedélyezésekor igen komolyan érdemes megfontolni, hogy ne használhassák a .htaccess fájlokat, amelyekkel felülírhatók a biztonsági beállítások. Legalábbis korlátozni kell azt, hogy a felhasználó milyen mértékben befolyásolhatja a beállításokat (az AllowOverRide direktívával). Az openSUSE rendszereken a .htaccess fájlok alapértelmezés szerint engedélyezve vannak ugyan, de a felhasználók nem jogosultak felülírni semmilyen Option direktívát a mod_userdir használatakor (lásd az /etc/apache2/mod_userdir.conf konfigurációs fájlt).
Ha az Apache nem indul el, a weboldalak nem érhetők el, vagy a felhasználók nem tudnak csatlakozni a webkiszolgálóhoz, akkor fontos a probléma okának mihamarabbi azonosítása. Alább bemutatunk néhány szokásos helyet, ahol érdemes kutatni hibák után, és néhány fontos ellenőrzendő dolgot:
Ahelyett, hogy a webkiszolgálót a /usr/sbin/httpd2 binárissal indítja el és állítja le, inkább használja az rcapache2 parancsfájlt a 28.3. - Az Apache elindítása és leállítása fejezetben leírtak szerint.. Részletes hibajelzést, valamint tanácsokat ad a konfigurációs hibák megoldására.
Kisebb és nagyobb hibák esetén is /var/log/apache2/error_log Amennyiben részletesebb adatokra van szükség a naplófájlokban, ez a LogLevel direktívával szabályozható.
![]() | Egy egyszerű vizsgálat |
|---|---|
Írassa ki az Apache naplóüzeneteit a tail -F /var/log/apache2/ | |
Szokásos hiba, hogy nem nyitják ki az Apache portjait a kiszolgáló tűzfalán. Ha az Apache beállítását a YaST-tal végezte, akkor egy külön opció szolgál pontosan ennek a végrehajtására (lásd: 28.2.3. - Az Apache beállítása a YaST segítségével). Ha kézzel állította be az Apache webkiszolgálót, használja a YaST tűzfal modulját a HTTP- és a HTTPS-portok megnyitásához.
Ha a hiba okát a fentiek egyikével sem sikerült megtalálni, nézzen körül az Apache online hibaadatbázisában, a http://httpd.apache.org/bug_report.html címen. Végül az Apache felhasználói közösség elérhető egy levelezőlistán is (http://httpd.apache.org/userslist.html). A javasolt hírcsoport az comp.infosystems.www.servers.unix.
Az apache2-doc csomag tartalmazza az Apache teljes kézikönyvét különféle nyelveken, a helyi telepítéshez és referenciának. Alapértelmezés szerint nincs telepítve – a leggyorsabb módja a telepítésének a zypper in apache2-doc parancs kiadása. Telepítés után az Apache kézikönyv a http://localhost/manual/ címen érhető el. Elérhető a weben is, a http://httpd.apache.org/docs-2.2/ címen. A SUSE-val kapcsolatos beállítási javaslatok az /usr/share/doc/packages/apache2/README.* könyvtárban olvashatók.
Az Apache 2.2 új funkcióinak a listája: http://httpd.apache.org/docs/2.2/new_features_2_2.html. A 2.0-ról 2.2-es verzióra frissítéssel kapcsolatos információ: http://httpd.apache.org/docs-2.2/upgrading.html.
A 28.4.5. - Külső modulok fejezetben röviden ismertetett külső Apache modulokkal kapcsolatos további információ a következő helyen érhető el:
További információ az Apache-modulok fejlesztésével, illetve az Apache webkiszolgáló projektben részvétellel kapcsolatban az alábbi helyeken található:
Ha nehézségekbe ütközne az openSUSE rendszeren az Apache használatával, nézzen körül az openSUSE wiki-n a http://old-en.opensuse.org/Apache címen. Az Apache történetének leírása a http://httpd.apache.org/ABOUT_APACHE.html címen olvasható Itt azt is megismerheti, miért Apache névre hallgat a .kiszolgáló.