Debain (Ubuntu) Apache 2 futtatás mod_fcgi-vel

Amennyiben Debian vagy Ubuntu rendszerű linux szerverünkön alapértelmezett (vagy alapértelmezetthez közeli) konfigurációval futtatjuk az Apache2 web szervert, nagy valószínűséggel a apache2-mpm-prefork wokert használjuk libapache2-mod-php5 -tel. Habár ez az alapértelemezett működés, nagy forgalom, illetve nagy, lassan futó scriptek esetében meggondolandó az apache2-mpm-worker használata, mivel a prefok modul memória igénye magas, illetve amiatt, hogy minden kérésrt egyetlen szál szolgál ki, a kiszolgálás sebessége nagymértékben lassulhat.

Nagy terhelésű szervereken ezek alapján mindenképpen érdemes a worker-t telepíteni, de ez felvet egy újabb problémát: a libapache2-mod-php5 csak a prefork-kal kompatibilis, a worker telepítése esetén a debian alapú rendszerek automatikusan eltávolítják azt.

Ebben a leírásban bemutatom, hogy hogyan tudjuk a preforkot workerre cserélni, illetve a libapache2-mod-php5 helyett hogyan tudunk mod_fcgi-t üzembe helyezni.

Apache2 worker és mod_fcgid telepítés:

apt-get install apache2-mpm-worker libapache2-mod-fcgid

mod_fcgid engedélyezése:

sudo a2enmod fcgid

Szükséges php5  modulok telepítése

Bármilyen php 5 modul telepíthető a rendszerre, amely szükséges a scriptek megfelelű működéséhez, pl.:

apt-get install php5-cgi php5-curl php5-gd php5-ldap php5-mysql php5-mysqli php5-sqlite php5-xsl

Apache2 beállítások

A csomagok telepítése után az apache2 beállítása következik. A példa az apache2 default virtualhostján keresztül mutatja be a beállításokat,  de ezeknek a módosításokat minden virtualhostban el kell végezni.

Keressük meg a virtualhost gyökérkönyvtárára vonatkozó bejegyzést, és egészítsük ki így:

<Directory /var/www>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
</Directory>

majd pedig minden “directory” bejegyésben engedélyezzük a CGI futtatást:

Options ExecCGI Indexes

A virtualhostok mentése után csupán egy apache2 újraindítás van hátra:

/etc/init.d/apache2 force-reload

és a forrás pedig:

Ezt a cikket az alábbi leírás alapján portoltam a saját rendszeremre és magyar nyelven:

http://ivan.gudangbaca.com/installing_apache2_and_php5_using_mod_fcgid

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>