Φίλε, πού είναι το php.ini μου;

Πριν από μερικά χρόνια εγκατέστησα τον Apache 2.2x και την PHP 5.3.1 σε έναν διακομιστή Linux που συντηρώ. Χρησιμοποίησα .tar.gz's και τα έφτιαξα σύμφωνα με τις οδηγίες (αντί για rpms και ό,τι άλλο). Και όλα ήταν μια χαρά.

Σήμερα πρέπει να εγκαταστήσω αυτό που φαίνεται σαν μια βιβλιοθήκη PHP. Πέρασα από όλα τα βήματα μέχρι το make install, και βρίσκω το ibm_db2.so στο $PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so

Η μεγάλη παγίδα είναι ότι το τελευταίο βήμα είναι να ρυθμίσετε το php.ini, αλλά δεν υπάρχει κανένα php.ini στο σύστημά μου. Ο τρόμος του τρόμου. Η PHP δουλεύει μια χαρά, εκτός φυσικά από αυτό το νεόφερτο ibm_db2 thingamagic που θέλω να χρησιμοποιήσω ώστε κάποιος να μπορεί να χρησιμοποιήσει ένα GUI για να πειράξει την DB2. (Δοκίμασα ένα μικρό php script το οποίο αποτυγχάνει και δείχνει ότι οι λειτουργίες ibm_db2 δεν είναι διαθέσιμες).

Έχω να ασχοληθώ με την PHP μια φορά κάθε λίγα χρόνια, οπότε σας παρακαλώ να με διαφωτίσετε σε πολύ βασικό επίπεδο για το τι θα μπορούσα να κάνω για να ενεργοποιήσω την πρόσβαση στο DB2 μέσω web-based GUI.

Στη γραμμή εντολών εκτελέστε:

php --ini

Θα λάβετε κάτι σαν:

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

Αυτό'είναι από την τοπική μου dev-μηχανή. Ωστόσο, η δεύτερη γραμμή είναι η πιο ενδιαφέρουσα. Αν δεν αναφέρεται τίποτα, ρίξτε μια ματιά στην πρώτη. Αυτή είναι η διαδρομή, όπου η PHP αναζητά το αρχείο php.ini.

Μπορείτε να αναζητήσετε τις ίδιες πληροφορίες χρησιμοποιώντας την phpinfo() σε ένα σενάριο και να το καλέσετε με ένα πρόγραμμα περιήγησης. Αναφέρεται στο πρώτο μπλοκ της εξόδου. Το php -i κάνει το ίδιο για τη γραμμή εντολών, αλλά είναι αρκετά άβολο.

Σχόλια (10)
phpinfo();

θα σας πει τη θέση του, ή από τη γραμμή εντολών

php -i
Σχόλια (0)

Μπορείτε να πάρετε περισσότερες πληροφορίες για τα αρχεία ρυθμίσεων χρησιμοποιώντας κάτι σαν:

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

Configure Command =>  './configure'  ...
Loaded Configuration File => /path/to/php.ini
Σχόλια (0)