3. Fejezet. Konfiguráció

Tartalom
A konfigurációs file

A konfigurációs file

A konfigurációs file-t (PHP 3.0-ban php3.ini, de PHP 4.0-ban már php.ini) a PHP induláskor olvassa be. A szerver modul verzióban ez csak egyszer történik meg, amikor a szerver elindul. A CGI verzióban ez minden meghíváskor megtörténik.

Ha a PHP-t Apache modulként használod, akkor a beállításokat az Apache konfigurációs file-jának direktíváival és .htaccess file-okkal is megváltoztathatod.

PHP 3.0 esetén minden php3.ini beállításhoz létezik egy megfelelő Apache direktíva, amely "php3_"-al kezdődik.

PHP 4.0 esetén azonban csak néhány Apache direktíva létezik, amivel a PHP beállításait megváltoztathatod.

php_value név érték

A megadott változó értékét határozza meg.

php_flag név on|off

Egy igen-nem (ki-be) választást állít be (on vagy off).

php_admin_value név érték

A megadott változó értékét határozza meg. Az "admin" konfiguárciós beállítások csak a fő Apache konfigurációs file-okban állíthatóak, a .htaccess file-okban nem.

php_admin_flag név on|off

Egy igen-nem (ki-be) választást állít be (on vagy off).

A konfigurációs beállításokat lekérheted a phpinfo()-val. Egyenkénti elérést biztosít a beállításokhoz a get_cfg_var().

Általános célú beállítások

asp_tags on|off

Engedélyezi az ASP stílusú <% %> tag-ek használatát a hagyományos <?php ?> mellett. Ez a beállítás engedélyezi az érték kiíró rövidítést is (<%= $valtozo %>). További információért nézd meg az Escape szekvencia HTML-ben című részt.

Megjegyzés: Az ASP stílusú tag-ek használata a 3.0.4-es verzió óta lehetséges.

auto_append_file string

Megadja a file nevét, amit majd automatikusan minden dokumentum végére illeszt. A beillesztés úgy történik, mintha az include() függvényt használnád, tehát az include_path használatos a kereséséhez.

A none speciális érték megtiltja az automatikus hozzáfűzést.

Megjegyzés: Ha egy scriptből exit(), segítségével lépsz ki, a hozzáfűzés nem működik.

auto_prepend_file string

Megadja a file nevét, amit majd automatikusan minden dokumentum elejére illeszt. A beillesztés úgy történik, mintha az include() függvényt használnád, tehát az include_path használatos a kereséséhez.

A none speciális érték megtiltja az automatikus hozzáfűzést.

cgi_ext string

display_errors on|off

Meghatározza, hogy a hibaüzenetek a HTML file részeként a képernyőre kerüljenek, vagy sem.

doc_root string

A PHP "gyökérkönyvtára" a szerveren. A PHP csak akkor használja, ha itt megadtál valamit. Ha a PHP-t safe mode-ban használod, semmilyen file-t nem dolgoz fel, ami ezen a könyvtáron kívül van.

engine on|off

Igazán csak a PHP Apache modul verziójában hasznos. Olyan site-okon jöhet jól, ahol a PHP feldolgozását könyvtáranként vagy virtuális szerverenként szeretnék állítani. Ha a httpd.conf file megfelelő helyén beírod, hogy engine off, a PHP-t kikapcsolhatod.

error_log string

A file neve, ahol a scriptek hibaüzenetei tárolásra kerülnek. Ha a syslog speciális értéket adod meg, akkor az üzenetek rendszer log-ba kerülnek. UNIX alatt ez a syslog(3)-at jelenti, Windows NT-n az event log-ot. Ez a paraméter Windows 95 alatt nem támogatott.

error_reporting egész szám

Beállítja a hibajelzési szintet. A paraméter egy egész szám, ami egy bitmezőt reprezentál. Add az alábbi értékek közül össze azokat, amikről hibát szeretnél kapni, és azt a számot alkalmazd paraméterként.

Táblázat 3-1. Hibajelentési szintek

értékengedélyezett hibajelzés
1normál hibák
2normál figyelmeztetések (warnings)
4feldolgozási hibák
8nem kritikus, stílussal kapcsolatos figyelmeztetések
Az alapérték 7 (normál hibák, normál figyelmeztetések és feldolgozási hibák jelennek meg).

open_basedir string

Meghatározza, hogy a PHP hol nyithat meg file-okat a könyvtárfában.

Ha egy script megpróbál megnyitni egy file-t (pl. fopen-el vagy gzopen-el), a file helye ellenőrzésre kerül. Ha a file kívül esik a megadott könyvtárból nyíló directpry-fán, a PHP nem fogja megnyitni. Minden szimbolikus link feloldásra kerül, így egy symlink-kel nem lehet megkerülni ezt a korlátozást.

A . (pont) speciális érték azt jelzi, hogy a scriptet tartalmazó könyvtárat kell alapkönyvtárnak tekinteni.

Windows alatt a több különböző könyvtárat pontosvesszővel elválasztva adhatod meg. Minden más rendszeren a megadott könyvtárakat kettősponttal kell elválasztani. Apache modul esetén az open_basedir elérési utak az egy szinttel feljebb lévő könyvtárból automatikusan öröklődnek.

Megjegyzés: Több könyvtár megadása a 3.0.7-es verzió óta lehetséges.

Alapbeállításban a PHP semmilyen file megnyitását sem tiltja le.

gpc_order string

Beállítja a GET/POST/COOKIE sorrendet a változók létrehozásához. Az alapbeállítású érték "GPC". Ha például ezt "GP"-re írod át, a PHP figyelmen kívül fogja hagyni a cookie-kat, és ha van egy POST és egy GET értéked ugyanazzal a névvel, a PHP a POST értéket teszi be a név által megadott változóba.

ignore_user_abort string

Alapbeállításban "On". Ha kikapcsolod, a scriptek leállnak, amikor megpróbálnak küldeni a kliensnek valamit, miután a kliens lezárta a kapcsolat. ignore_user_abort().

include_path string

Egy könvytárlistát határoz meg, ahol a require(), include() és fopen_with_path() függvények a file-okat keresik. A formátum a rendszer PATH környezeti változójának formátumával egyező: egy könyvtárlista kettőspontokkal elválasztva UNIX alatt, pontosvesszővel Windows alatt.

Példa 3-1. UNIX include_path

  1 
  2 
  3 include_path=.:/home/httpd/php-lib
  4 
  5 

Példa 3-2. Windows include_path

  1 
  2 
  3 include_path=".;c:\www\phplib"
  4 
  5 
Alapbeállítású érték a . (pont), azaz csak a script könyvtára.

isapi_ext string

log_errors on|off

Megadja, hogy a script hibaüzenetek a szerver error logjába is bekerüljenek-e vagy sem. Mindenesetre ez egy szerverfüggő beállítás!

magic_quotes_gpc on|off

Beállítja a "magic_quotes" állapotot a GPC (Get/Post/Cookie) műveletekhez. Ha bekapcsolod, minden ' (egyszeres idézőjel), " (kétszeres idézőjel), \ (backslash) és NUL elé egy backslash (\) kerül automatikusan. Ha a "magic_quotes_sybase" szintén be van kapcsolva, az egyszeres idézőjel elé egyszeres idézőjel kerül backslash helyett.

magic_quotes_runtime on|off

Ha a magic_quotes_runtime be van kapcsolva, a legtöbb függvény, ami külső forrásból ad vissza adatokat (beleértve adatbázisokat és szöveges file-okat), az idézőjeleket elé backslash-t tesz. Ha a magic_quotes_sybase szintén ba van kapcsolva, az egyszere idézőjel elé egyszeres idézőjel kerül backslash helyett.

magic_quotes_sybase on|off

Ha a magic_quotes_sybase be van kapcsolva, minden egyszeres idézőjel elé egyszeres idézőjel kerül backslash helyett, ha a magic_quotes_gpc vagy a magic_quotes_runtime bekapcsolt állapotban van.

max_execution_time egész szám

Előírja a scriptek számára a maximális futásidőt, másodpercekben mérve. Ha ezt az időt eléri a script, automatikusan megszakad a futás. Ez segíthet megvédeni a szervert a rosszul megírt, nagy erőforrásigényű scriptektől.

memory_limit egész szám

Megadja, hogy maximálisan hány byte memóriát foglalhat le egy script. Ez segíthet megvédeni a szervert a rosszul megírt scriptektől, amik megehetik a szerver összes memóriáját.

nsapi_ext string

short_open_tag on|off

Megadja, hogy használható-e a rövid PHP escape forma (<? ?>) a scriptek írásakor. Ha a PHP-t az XML mellett használod, ki kell ezt kapcsolnod, és a hosszab formát kell alkalmaznod (<?php ?>).

sql.safe_mode on|off

track_errors on|off

Ha engedélyezed, a legutóbbi hibaüzenet mindig ott lesz a $php_errormsg globális változóban.

track_vars on|off

Ha bekapcsolod, a GET, POST és cookie adatok a $HTTP_GET_VARS, $HTTP_POST_VARS és $HTTP_COOKIE_VARS globális asszociatív tömbökben lesznek értelemszerűen.

upload_tmp_dir string

Ebbe az ideiglenes könyvtárba fogja a PHP elmenteni a weben feltöltött file-okat. Írhatónak kell lennie a felhasználó számára, ami alatt a PHP fut.

user_dir string

Annak a könyvtárnak a neve a felhasználók home könyvtárában, ahol a PHP file-ok vannak, például public_html.

warn_plus_overloading on|off

Ha engedélyezed, a PHP figyelmeztetést (warning) fog kiadni, ha a plusz +) operátort használja egy script string-ekhez. Ez ezért jó, mert így könnyebb megtalálni az újraírandó scripteket, hogy a szövegösszefűzés operátort (.) használják inkább.

Levelezés beállítási lehetőségei

SMTP string

A DNS neve vagy IP címe annak az SMTP szervernek, amit a PHP Windows alatt a mail küldésre használ, amikor a mail() függvényt hívod meg.

sendmail_from string

Megadja, hogy milyen "From:" email címet használjon a PHP mail küldésekor Windows alatt.

sendmail_path string

Megadja, hogy hol található a sendmail program. Ez általában /usr/sbin/sendmail vagy /usr/lib/sendmail. A configure megpróbálja megtalálni, és beállítani, de ha ez nem sikerül, itt te is beállíthatod.

Azokon a rendszereken, ahol nem a sendmail használatos, ez a beállítás a sendmail wrapper/helyettesítő beállítására szolgál, ha van ilyen. Például a Qmail használók általában a /var/qmail/bin/sendmail beállítást használják.

Safe Mode beállítási lehetőségek

safe_mode on|off

Ki/bekapcsolja a PHP "safe mode" funkcióját. Lásd még a Biztonság című fejezetet.

safe_mode_exec_dir string

Ha a PHP-t "safe mode"-ban használod, a system() és más külső program futtatók el fogják utasítani az itt megadott könyvtáron kívüli programok futtatását.

A debugger beállítási lehetőségei

debugger.host string

A DNS név vagy IP cím, amit a debugger használ.

debugger.port string

A portszám, amit a debugger használ.

debugger.enabled on|off

A debugger engedélyezése.

Kiterjesztés-betöltés beállítási lehetőségei

enable_dl on|off

Ez a beállítás igazán csak az Apache modulban hasznos. Be tudod vele állítani, hogy a dl() függvény használható legyen-e az egyes virtuális szervereken vagy könyvtárakban.

A fő indoka, hogy ezt kikapcsold a biztonság. Dinamikus betöltéssel ki lehet kerülni minden safe_mode és open_basedir megkötést.

Alapbeállításban engedélyezett a dinamikus betöltés, kivéve safe-mode-ban. Safe-mode-ban soha nem lehet használni a dl() függvényt!

extension_dir string

Az a könyvtár, ahol a dinamikusan betölthető kiterjesztések vannak.

extension string

Mely dinamikusan betölthető kiterjesztés legyen már a PHP indulásakor alapbeállításban betöltve.

MySQL beállítási lehetőségek

mysql.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) MySQL kapcsolat.

mysql.default_host string

Alapbeállítású host, ha a script írója nem ad meg semmit amikor egy MySQL szerverhez csatlakozik.

mysql.default_user string

Alapbeállítású felhasználói név, ha a script írója nem ad meg semmit amikor egy MySQL szerverhez csatlakozik.

mysql.default_password string

Alapbeállítású jelszó, ha a script írója nem ad meg semmit amikor egy MySQL szerverhez csatlakozik.

mysql.max_persistent egész szám

Az állandó (persistent) MySQL kapcsolatok maximális száma process-enként.

mysql.max_links egész szám

A MySQL kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is.

mSQL beállítási lehetőségek

msql.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) mSQL kapcsolat.

msql.max_persistent egész szám

Az állandó (persistent) mSQL kapcsolatok maximális száma process-enként.

msql.max_links egész szám

Az mSQL kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is.

Postgres beállítási lehetőségek

pgsql.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) Postgres kapcsolat.

pgsql.max_persistent egész szám

Az állandó (persistent) Postgres kapcsolatok maximális száma process-enként.

pgsql.max_links egész szám

A Postgres kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is.

Sybase beállítási lehetőségek

sybase.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) Sybase kapcsolat.

sybase.max_persistent egész szám

Az állandó (persistent) Sybase kapcsolatok maximális száma process-enként.

sybase.max_links egész szám

A Sybase kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is.

Sybase-CT beállítási lehetőségek

sybct.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) Sybase-CT kapcsolat. Alapbeállításban engedélyezett.

sybct.max_persistent egész szám

Az állandó (persistent) Sybase-CT kapcsolatok maximális száma process-enként. Alapbeállításban -1, ami azt jelenti, hogy nincs korlát.

sybct.max_links egész szám

A Sybase-CT kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is. Alapbeállításban -1, ami azt jelenti, hogy nincs korlát.

sybct.min_server_severity egész szám

Azok a szerver üzenetek, amik ezzel megegyező vagy nagyobb fontossággal rendelkeznek, figyelmeztetésként (warning) jelennek meg. Ez az érték script-ből is módosítható a sybase_min_server_severity() függvényyel. Alapbeállításban 10, ami az jelenti, hogy "information severity" és afölötti értékekkel rendelkező üzenetek hibát generálnak.

sybct.min_client_severity egész szám

Azok a kliens üzenetek, amik ezzel megegyező vagy nagyobb fontossággal rendelkeznek, figyelmeztetésként (warning) jelennek meg. Ez az érték script-ből is módosítható a sybase_min_client_severity()függvénnyel. Alapbeállításban 10, ami gyakorlatilag kikapcsolja az ilyen üzeneteket.

sybct.login_timeout egész szám

A maximális idő (másodpercben), amit a kapcsolódási kérés befejezésére várni kell, mielőtt hiba a visszatérési érték. Fontos, hogy ha a max_execution_time értéket eléri a script, amikor a kapcsolati kísérlet kifut az időből, a script le fog állni, mielőtt a létre nem jött kapcsolat miatt elvégzendő feladatokat teljesítené! Az alapbeállítás egy perc.

sybct.timeout egész szám

A maximális idő (másodpercben), amit a select_db kérés befejezésére várni kell, mielőtt hiba a visszatérési érték. Fontos, hogy ha a max_execution_time értéket eléri a script, amikor a select_db kísérlet kifut az időből, a script le fog állni, mielőtt a létre nem jött választás miatt elvégzendő feladatokat teljesítené! Alapbeállításban nincs ilyen korlát.

sybct.hostname string

A host neve ahonnan csatlakozni szeretnél. Ezt jeleníti meg az sp_who. Nincs alapbeállítású értéke.

Informix beállítási lehetőségek

ifx.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) Informix kapcsolat.

ifx.max_persistent egész szám

Az állandó (persistent) Informix kapcsolatok maximális száma process-enként.

ifx.max_links egész szám

Az Informix kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat.

ifx.default_host string

Alapbeállítású host, ha a script írója nem ad meg semmit az ifx_connect() vagy ifx_pconnect() paramétereként.

ifx.default_user string

Alapbeállítású felhasználói azonosító, ha a script írója nem ad meg semmit az ifx_connect() vagy ifx_pconnect() paramétereként.

ifx.default_password string

Alapbeállítású jelszó, ha a script írója nem ad meg semmit az ifx_connect() vagy ifx_pconnect() paramétereként.

ifx.blobinfile on|off

Állítsd igazra, ha blob oszlopokat egy file-ban szeretnéd visszadani, hamisra, ha a memóriában. Ezt a beállítást felülbírálhatod futásidőben az ifx_blobinfile_mode()-al.

ifx.textasvarchar on|off

Állítsd igazra, ha a TEXT oszlopokat normál string-ként szeretnéd visszakapni select kérésekben, hamisra, ha ha blob id paramétereket használsz inkább. Ezt a beállítást felülbírálhatod futásidőben az ifx_textasvarchar()-al.

ifx.byteasvarchar on|off

Állítsd igazra, ha a BYTE oszlopokat normál string-ként szeretnéd visszakapni select kérésekben,, hamisra, ha blob id paramétereket használsz inkább. Ezt a beállítást felülbírálhatod futásidőben az ifx_textasvarchar()-al.

ifx.charasvarchar on|off

Állítsd igazra, ha nem szeretnéd visszakapni a CHAR oszlopok záró szóközeit.

ifx.nullformat on|off

Állítsd igazra, ha a NULL oszlopokat a "NULL" string-ként szeretnéd megkapni select kérésekben, hamisra, ha üres stringként (""). Ezt a beállításd felülbírálhatod futásidőben az ifx_nullformat()-al.

BC Math beállítási lehetőségek

bcmath.scale egész szám

A decimális számjegyek száma a bcmath függvények számára.

Böngésző-képességek beállítási lehetőségei

browscap string

A böngészők képességeit tartalmazó file neve. Lásd még: get_browser().

Unified ODBC beállítási lehetőségek

uodbc.default_db string

Alapbeállítású ODBC adatforrás, ha a script írója nem ad meg semmit a odbc_connect() vagy odbc_pconnect() paramétereként.

uodbc.default_user string

Alapbeállítású felhasználói név, ha a script írója nem ad meg semmit az odbc_connect() vagy odbc_pconnect() paramétereként.

uodbc.default_pw string

Alapbeállítású jelszó, ha a script írója nem ad meg semmit az odbc_connect() vagy odbc_pconnect() paramétereként.

uodbc.allow_persistent on|off

Meghatározza, hogy létrejöhet-e állandó (persistent) ODBC kapcsolat.

uodbc.max_persistent egész szám

Az állandó (persistent) ODBC kapcsolatok maximális száma process-enként.

uodbc.max_links egész szám

Az ODBC kapcsolatok maximális száma process-enként, beleértve az állandó (persistent) kapcsolatokat is.