A PHP programozási nyelv

Fordítók

1. Letöltés

A PHP-t szinte az összes platformon meg lehet valósítani, Apache Linux, IIS/PWS, Windows és NT. *nix szerverhez a komplett forráskódot érdemes letölteni, és a PHP-t részenként felépíteni. Windows esetén a PHP-nak a bináris verzióját ajánlhatom.

1.1. Windows alatt:

A letöltött PHP bináris install tartalmazza a CGI (Common Gateway Interface) és az ISAPI verziót. IIS illetve PWS rendszerek esetén az ISAPI verziót érdemes használni. A CGI megköveteli a futtatható PHP behívását minden lap esetén, emiatt nem olyan hatékony, mint a dinamikusan linkelt könyvtárak használata (CGI).
Az ISAPI installálásához be kell másolni a php4ts.dll és az msvrt.dll fájlokat a Windows rendszerkönyvtárába. Ezután be kell konfigurálni az IIS-t vagy PWS-t, hogy az ISAPI-t használják PHP fájlok kiszolgálására. IIS-nel a Microsoft Management Console –t kell ehhez elindítani. Válasszuk ki a Default Web Site (webszerver csomópontja), majd ennek Properties menüpontjából a Home Directory fülben lépjünk be Configuration menübe. Itt már szabadon társíthatunk új fájlokat. Az eredmény az Application Configuration dialógusablakban fog megjelenni.
Konfiguráció után újra kell indítani a webszervert, amit a Control Panel→Services appleten keresztül lehetséges, illetve parancssorosan: net stop iisadmin

Net start w2svc

CGI esetén installálás csak a társításnál tér el. Most az ISAPI DLL helyett a php.exe fájlt kell kiválasztani. Mivel az IIS/PWS paramétereket küld a futtatható CGI-knek, %s %s parancssori opciót biztosítani kell a futtatható állomány nevével.

1.2. *NIX alatt:

Red Hat esetén a „Red Hat Package Manager (RPM)”-ben fájlok formájában megtalálható a PHP bináris verziója. Egyes *nix installációknál ez része a webszerver installációnak. Az RPM tartalmazza az eszköz platformspecifikusan felépített változatát, amely azonnal használható.
PHP installálása a parancssorba beírt következő szöveggel lehetséges:

rpm-i

Ez az összes bináris állományt installálja az RPM áltál felépített könyvtárákba. Installálás után manuálisan kell beírni a webszervernek a PHP bináris fájlainak használatát.
(A következő minden Apache webszerverekre vonatkozik)
Elsőként hozzunk létre egy asszociációt a fájl kiterjesztése és a média típusa között.

AddType application/x-httpd-php.php
AddType application/x-httpd-php.phtml
AddType application/x-https-php.inc

Ezután az Apache a php, phtml és inc kiterjesztésű fájlokat application/x-httpd-php-ként fogja tekinteni. Dolgozzuk fel ezeket a fájlokat a PHP-vel, majd módosítsuk a httpd.conf fájlt ahhoz, hogy a PHP-modult be tudja tölteni:

LoadModule php4_module libexec/libphp4.so

1.3. CGI esetén:

Action application/x-httpd-php/chi-bin-php

Az Action egy médiatípust definiál, ami egy script-et futtat le, amikor egy illeszkedő fájlt kérnek a webszervertől.
Befejező lépés a webszerver újraindítása:

/utvonal/to/appachectl restart

2. Fordítás

2.1. Windows alatt:

Fejlsztőkörnyezete nincsen, általában a Visual C++-t érdemes használni. Ahhoz, hogy futtatni tudjuk, le kell tölteni egy pár extra fájlt. Ezek a következők:

Először a Cygwin segédprogramokat kell installálni, az autoexec.bat-ba be kell írni az útvonalát. Ezek után a szükséges lépések a következők: (win32build.zip szükséges ehhez)

Visual C++ → Tools → Option → Directories → Executable files → Add Cygwin bin könyvtár

Majd az include fájlokhoz hozzá kell adni a win32build/include könyvtár helyét, és a bin fájlokhoz a win32build/lib könyvtárat.
Ezek a lépések kellenek ahhoz, hogy a Visual C++ megtalálja a PHP eszközöket és fájlokat.
Következő lépés a resolv.lib új verziójának lefordítása. (_w32.zip fájl kell)

Visual C++ → Open bindlib.dsp

Build → Set Active Configuration → debug ill. release kiválasztása (PHP verziójától függ) → project fordítása (F7) → resolv.lib fájl bemásolása a win32build/lib könyvtárba.
Ezután a kicsomagolt "number.tar.gz" fájlokat be kell másolni a "number.c" és a "number.h" PHP forrásfájának az ext/bcmath könyvtárába.
Befejezésül a Visual C++-al a win32 könyvtárban található php4ts.dsp projectfájl lefordítása után létre jött egy futtatható PHP, amely már használható. (Ha más konfigurációra van szükség, akkor az új konfiguráció kiválasztása után újra le kell fordítani a projectfájlt.)

2.2. *NIX alatt:

Abban az esetben, ha Apache webszerver futtatunk, a PHP-t létrehozhatjuk binárisan futtathatóként, dinamikusan betöltött modulként vagy statikus könyvtárként. Más webszerver esetén a már említett php weboldalon található ezekről információ.
Első lépésként ki kell csomagolni a PHP-forrást tartalmazó fájlokat, és mind ugyanabba a könyvtárba eltárolni azokat. Ezek után a configure scriptet kell lefuttatni a konfigurációs lehetőségek beállításához. A fordítás elvégzéséhez a make-et kell majd alkalmazni.
Utolsó lépés a PHP installálása és a webszerver újraindítása.

2.3. Letöltés, install, setup – egy adott konfiguráción

Konfiguráció:

Linux kernel: 2.6.16.5
Debian disztribúció: 1:3.3.5-13
gcc verzó: 3.3.5

Jelenlegi verziók:

Apache 2.2.2
PHP 5.1.4

Letöltés:
Apache: http://apache.webhelyek.hu/httpd/httpd-2.2.2.tar.gz
PHP5: http://hu.php.net/get/php-5.1.4.tar.gz/from/this/mirror

Kicsomagolás, például egy apache_222 nevű könyvtárba. Ez lesz utána:
/apache_222# ls
httpd-2.2.2 php-5.1.4

Installálás:
cd httpd-2.2.2
./configure --prefix=/usr/local/www --enable-module=so
make
make install

cd ../php-5.1.4
./configure --with-apxs2=/usr/local/www/bin/apxs
make
make install

Ezután még be kell írnunk a (/usr/local/www/conf/)httpd.conf fájlba a már említett .php, .inc és .phtml kiterjesztéseket.
A „LoadModule php5_module modules/libphp5.so” sort remélhetőleg már beírta az install,
de ha mégsem, akkor ezt tegyük meg.

Végezetül indítsuk el a webservert (/usr/local/www/bin/httpd) !

A DocumentRoot könyvtárunk, ha nem adtunk meg mást, a /usr/local/www/htdocs/ könyvtár lesz, ide helyezhetjük leendő php programjainkat!