A telepítésre az alábbi módszert javaslom.
Töltsd le azalábbiakat:
- Oracle 11g-t innen (v. 11.1.0.6.0):
http://www.oracle.com/technology/software/products/database/index.html
- Apache HTTP szervert az Apache honlapjáról (v. 2.2.10):
http://httpd.apache.org/download.cgi
- a php5-t a php honlapjáról (v. 5.2.6):
http://www.php.net/downloads.php
(itt inkább a tömörített állományt töltsük le)
A telepítést az Oracle 11g-vel kezdjük, aminek most nem részletezem a menetét. Egy ehhez hasonó leírást találsz egy egyik korábbi bejegyzésemben,
itt. (Figyeljünk arra, hogy ne használja a 80-as portot az Oracle)
Miután a telepítőben leírt módon megbizonyosodtunk róla, hogy a szerverünk megfelelően működik, folytassuk a webszerverrel.
Indítsuk el az Apache oldaláról letöltött telepítőt (apache_2.2.10-win32-x86-openssl-0.9.8i.msi)
Telepítési útnak állítsuk be a C:\Apache könyvtárat, így elkerüljük a szóközökből esetlegesen adódó problémákat az elérési útban. Valamint a 80-as portot adjuk meg a kiszolgálónak minden felhasználó számára, és ne csak az aktuális felhasználónak. Így itt is elkerülhetjük az esetleges ütközéseket.
A telepítés végén teszteljük a böngészőnkben, hogy a szerver megfelelően működik:
http://localhost
Ha ez sikerült, akkor mehetünk a következő lépésre, a php5 konfigurálására.
Hozzunk létre egy mappát: C:\Apache\php5
Tömörítsük ki ide a letöltött fájlunkat (php-5.2.6-Win32.zip)
Valamint másoljuk a
C:\Apache\php5\php.ini-recommended fájlt ide:
C:\Apache\conf\php.ini majd nyissuk meg egy szövegszerkesztővel.
- Állítsuk át az extension_dir értékét a következőre:
extension_dir = "c:\Apache\php5\ext"
- Vegyük ki a pontosvesszőt a
extension=php_oci8.dll sor elől.
- A hibák könnyebb megtalálása miatt érdemes a hibák megjelenítését bekapcsolni:
display_errors = On
Ha ezzel megvagyunk, mentsük el a fájlt, és nyissuk meg a httpd.conf fájlt, és szerkessük az alábbi módon.
Keressük meg, hogy hol találhatóak a modul betöltő sorok. Ezt onnan ismerjük meg, hogy a következőképpen néz ki egy sor:
LoadModule module_name module_path
Ezek a sorok után szúrjuk be a php5 modulját:
LoadModule php5_module c:/Apache/php5/php5apache2_2.dll
Itt figyeljünk nagyon arra, hogy Apache 2.2 van-e a gépünkre telepítve, mert ha pl. Apache 2.0-t telepítettünk, akkor a
c:/Apache/php5/php5apache2.dll elérési utat kell megadnunk.
Figyeljünk arra is, hogy Windows alatt is "/" jeleket kell alkalmazni az elérési út megadásakor, és nem a Windowsban megszokott "visszaper" jelet.
Ezek után szúrjuk be az előbbi sor után az alábbiakat:
<IfModule php5_module>
# Beallitjuk, hogy a .php, .phtml, .phps kiterjesztesu
# fajlokra a PHP-t hivjuk meg
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps
# php.ini eleresi utja
PHPIniDir "c:/Apache/conf"
</IfModule>
Valamint keressük meg az alábbi kódrészletet, és egészítsük ki a következő módon:
<IfModule dir_module>
DirectoryIndex index.html index.php index.htm
</IfModule>
Ezzel beállítottuk, hogy az egyes mappákban alapértelmezetten az index.php fog meghívódni először, ha létezik, és csak a mappát adjuk meg.
Mentsük el a fájlunkat, és indítsuk újra az Apache szerverünket. Amennyiben hibát jelez, valószínűleg a LoadModule résznél lesz a hiba.
Amennyiben minden sikerült a fentiek közül, akkor ellenőrizzük, hogy betöltődött-e az OCI8-as modulunk.
Hozzuk létre a phptest.php fájlunkat az Apache szerver alapértelmezett www könyvtárába. (Ez nálam: C:\Apache\htdocs)
A tartalma pedig a következő legyen:
<?php
phpinfo();
?>
Mentsük el, és a böngészőnkben nyissuk meg:
http://localhost/phpinfo.php
Itt keressük meg azt a részt, aminek a címe "oci8".
Amennyiben ez megvan, akkor sikerült a konfigurációnk, és kapcsolódhatunk is az adatbázisunkhoz php-n keresztül.
Ehhez egy próba kód: nevezzük a fájlt ocitest.php-nak
<?php
// Az alabbi sort modositsd a beallitasaidnak megfeleloen!
$db_conn = ocilogon("username", "password", "host");
$cmdstr = "select TO_CHAR(sysdate,'yyyy-mm-dd hh24:mi:ss') datum from dual";
$parsed = ociparse($db_conn, $cmdstr);
ociexecute($parsed);
$nrows = ocifetchstatement($parsed, $results);
print "<html><head><title>Oracle PHP Test</title></head><body>";
print "<center><h2>Oracle PHP Test</h2><br>";
print "A mostani időpont: ".$results['DATUM'][0]."<br>";
print "<br><em>Ha ezt látod, akkor működik! ;)</em><br></center></body></html>\n";
?>
Majd nyissuk meg az oldalt a böngészőnkben:
http://localhost/ocitest.php
Ha ez az oldal is megjelenik, akkor megbizonyosodhatunk arról, hogy a beállításaink megfelelőek, és végeztünk a konfigurálással.
Az eredeti leírás
itt érhető el. (2008.november)