Dude, kje je moj php.ini?

Pred nekaj leti sem na strežnik Linux, ki ga vzdržujem, namestil Apache 2.2x in PHP 5.3.1. Uporabil sem .tar.gz in ju sestavil po navodilih (namesto rpms in podobno). In vse je bilo v redu.

Danes moram namestiti to, ki je videti kot knjižnica PHP. Šel sem skozi vse korake do make install in našel sem ibm_db2.so v $PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so

Velik zalogaj je, da je zadnji korak konfiguracija php.ini, vendar v mojem sistemu ni php.ini. Groza vseh groz. PHP deluje dobro, razen seveda za to novodobno ibm_db2 thingamagic, ki jo želim uporabiti, da lahko nekdo uporabi grafični uporabniški vmesnik, da se poigra z DB2. (Poskusil sem z majhno php skripto, ki je neuspešna in kaže, da funkcije ibm_db2 niso na voljo).

S PHP-jem se ukvarjam enkrat na nekaj let, zato me prosim na zelo osnovni ravni poučite, kaj bi lahko storil, da bi omogočil spletni grafični vmesnik za dostop do DB2.

V ukazni vrstici izvedite:

php --ini

Dobili boste nekaj takega:

Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File:         /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed:      /etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_sqlite.ini,
/etc/php5/cli/conf.d/sqlite.ini,
/etc/php5/cli/conf.d/sqlite3.ini,
/etc/php5/cli/conf.d/xdebug.ini,
/etc/php5/cli/conf.d/xsl.ini

To je iz mojega lokalnega stroja dev-machine. Zanimiva pa je druga vrstica. Če v njej ni ničesar omenjenega, si oglejte prvo vrstico. To je pot, kjer PHP išče php.ini.

Iste informacije lahko s pomočjo phpinfo() pobrskate v skripti in jo pokličete z brskalnikom. Omenjena je v prvem bloku izpisa. Enako stori php -i za ukazno vrstico, vendar je to precej neprijetno.

Komentarji (10)
phpinfo();

vam bo povedal njegovo lokacijo, ali pa iz ukazne vrstice

php -i
Komentarji (0)

Več informacij o svojih konfiguracijskih datotekah lahko dobite z uporabo naslednjega:

$ -> php -i | ack config # Use fgrep -i if you don't have ack

Configure Command =>  './configure'  ...
Loaded Configuration File => /path/to/php.ini
Komentarji (0)