Ubuntu 10.10: Lighttpd, PHP5 és MySQL

Ha esetleg szükségünk lenne egy gyors, kevés erőforrást igénylő webkiszolgálóra, érdemes egy pillantást venni a Lighttpd szerverre. Ebben a leírásban bemutatom, hogyan telepíthetünk Ubuntu 10.10 szerverünkre, VPS-ünkre Lighttpd kiszolgálót PHP és MySQL támogatással.


Nulladik lépésként szerezzünk root jogot:

sudo -s

MySQL telepítése

Elsőként telepítsük a MySQL szervert a következő paranccsal:

aptitude install mysql-server mysql-client

Telepítés közben a MySQL meg fogja kérdezni, hogy milyen MySQL root jelszót állítson be. A MySQL-ben ez lesz majd a gyárilag létrejövő szuper felhasználó jelszava. Nem kell egyeznie a rendszer root felhasználójának (ha van) jelszavával.

New password for the MySQL “root” user:
Repeat password for the MySQL “root” user:

Lighttpd telepítése

Könnyedén telepíthetjük a Lighttpd web kiszolgálót csomagból:

aptitude install lighttpd

Telepítés után el is indul, így böngészőből a http://gépneve oldalt megtekintve láthatunk egy alapértelmezett oldalt.

Lighttpd alapértelmezett kezdőlap Ubuntun

A Lighty alapértelmezett document rootja a /var/www mappa (Ubuntun), valamint a /etc/lighttpd/lighttpd.conf útvonalon található a konfigurációs fájlja. További konfigurációs fájlok a /etc/lighttpd/conf-available mappában találhatóak meg, pl. modulok beállításai. Ezeknek engedélyezéséhez a lighttpd-enable-mod parancsot kell használni, vagy a megfelelő bekapcsolni kívánt modul konfigurációs fájlját symlinkeljük be a /etc/lighttpd/conf-enabled mappába.

Modul letiltásához csak töröljük a symlinket, vagy használjuk a lighttpd-disable-mod parancsot.

PHP telepítése

Lighttpdvel a PHP-t FastCGI-n keresztül használhatjuk, így a php-cgi csomagot kell telepítenünk:

aptitude install php5-cgi

Lighttpd és PHP beállítása

Elsőként a php.ini fájlt kell módosítani, hogy engedélyezzük a cgi.fix_pathinfo értéket, mely a PHP FastCGI-os használatához szükséges.

editor /etc/php5/cgi/php.ini

Majd keressük meg a következőt:

; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI.  PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is.  For more information on PATH_INFO, see the cgi specs.  Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec.  A setting
; of zero causes PHP to behave as before.  Default is 1.  You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
; cgi.fix_pathinfo=1

És a cgi.fix_pathinfo sor elől töröljük ki a ; jelet.

Majd engedélyezzük a Lighttpdnek a php használatát:

lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php

A két parancs hatására létrejön egy symlink: /etc/lighttpd/conf-enabled/10-fastcgi.conf mely a /etc/lighttpd/conf-available/10-fastcgi.conf fájlra mutat és egy /etc/lighttpd/conf-enabled/15-fastcgi-php.conf mely a /etc/lighttpd/conf-available/15-fastcgi-php.conf fájlra mutat.

Mondjuk meg a Lighttpdnek, hogy töltse újra a beállításokat:

/etc/init.d/lighttpd force-reload

Tesztelés

Hozzunk létre egy info.php fájlt, mellyel kiiratjuk a phpinfo-t.

Mivel a webkiszolgáló gyökere a /var/www, ezért a /var/www/info.php fájlt hozzuk létre:

editor /var/www/info.php

Tartalma pedig elég ha csak ennyi:

<?php
phpinfo();

Majd nyissuk meg kedvenc böngészőnkben (http://szervercíme/info.php) és látnunk kell a phpinfo kimenetét

phpinfo kimenete

A Server API sorban láthatjuk, hogy a PHP CGI/FastCGI módban működik. Lejjebb görgetve láthatók azok a modulok melyeket a PHP tartalmaz és betöltötte őket.

MySQL támogatás PHP-ba

Ha jól működik önmagában a PHP, akkor rakjunk bele MySQL modulokat is, hogy tudjuk használni a MySQL szervert. Természetesen más modulokat is felrakhatunk amikre szükségünk lehet. Nézzük meg mik érhetőek el:

aptitude search php5

Majd a találatból telepítsük fel ami nekünk szükséges. Egy alap lista, általános célra:

aptitude install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

Ha kész a telepítés, indítsuk újra a Lighttps kiszolgálót

/etc/init.d/lighttpd restart

Majd töltsük be megint az info.php fájlt böngészőnkbe és nézzük meg a betöltött modulokat.

phpinfo kimenete: MySQL modul

6 hozzászólás


  1. Hasznos leírás. Bár én apache-al eddig jól megvagyok. Az alapértelmezett kezdőlap kép alatt elírtad a mappát: /var/eww. És a symlinkeljuk -ben lemaradt az ékezet.
    Bocsi. A cikk jó!



Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöljük.