Il y a quelques années, j'ai installé Apache 2.2x et PHP 5.3.1 sur un serveur Linux que je maintiens. J'ai utilisé .tar.gz et les ai construits comme indiqué (au lieu de rpms et de ce que vous avez). Et tout allait bien.
Aujourd'hui, je dois installer ce qui ressemble à une bibliothèque PHP. J'ai parcouru toutes les étapes pour faire l'installation, et je trouve ibm_db2.so dans$PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so
Le grand hic est que la dernière étape consiste à configurer php.ini mais il n'y a PAS de php.ini sur mon système. Horreur d'horreurs. PHP fonctionne très bien, sauf bien sûr pour ce nouveau concept ibm_db2 que je veux utiliser pour que quelqu'un puisse utiliser une interface graphique pour bricoler DB2
. (J'ai essayé un petit script php qui échoue et indique que les fonctions ibm_db2 ne sont pas disponibles).
Je dois faire face à PHP une fois toutes les quelques années, alors s'il vous plaît, éclairez-moi à un niveau très basique sur ce que je pourrais faire pour permettre l'accès à l'interface graphique Web DB2
.
locate php.ini
vous dira en quelques instants où le fichier est sur votre système.Réponses:
Le meilleur moyen de le trouver est de créer un fichier php et d'ajouter le code suivant:
et ouvrez-le dans le navigateur, il affichera le fichier en cours de lecture!
Mises à jour par OP:
<?php echo php_ini_loaded_file(); ?>
mentionnée dans cette réponse .la source
<?php phpinfo(); ?>
php -r \@phpinfo\(\)\;
travaille pour moiphp -r \@phpinfo\(\)\; | grep 'PHP Version' -m 1
pour extraire des informations spécifiques<?php echo php_ini_loaded_file(); ?>
Sur la ligne de commande, exécutez:
Vous obtiendrez quelque chose comme:
C'est de ma machine de développement locale. Cependant, la deuxième ligne est intéressante. S'il n'y a rien de mentionné, jetez un œil au premier. C'est le chemin, où PHP recherche le
php.ini
.Vous pouvez utiliser les mêmes informations
phpinfo()
dans un script et les appeler avec un navigateur. Son mentionné dans le premier bloc de la sortie.php -i
fait de même pour la ligne de commande, mais c'est assez inconfortable.la source
.php
fichier. Soit dit en passant, si vous commentez la question, je suis averti et je peux résoudre le problème plus tôt.phpinfo.php
fichier de type. Avec FPM, vous pouvez au moins utiliserphp5-fpm -i | grep '\.ini'
. Habituellement, vous l'utilisez deux ou trois fois et à la fin de la journée, vous savez où se trouvent les fichiers;)Cela fonctionne pour moi:
Vous devriez voir quelque chose comme:
ps Pour obtenir uniquement le chemin php.inin
la source
php.ini
, ce qui est exactement le problème: S'il n'y en a pas, vous ne savez toujours pas où regarder, ou où placer un nouveau.Configuration File (php.ini) Path => /usr/lib
, mais la course<?php phpinfo(); ?>
me donneLoaded Configuration File: /etc/php.ini
. Donc,phpinfo()
était plus fiable dans mon cas.Dans le type de fenêtre de commande
Il vous montrera le chemin quelque chose comme
Si la commande ci-dessus ne fonctionne pas, utilisez-la
la source
Cette commande devrait vous aider à la trouver
la source
Utilisez les commandes suivantes pour trouver le
php.ini
chemin du fichier sous linux.ou essayez ceci d'une autre manière
[root@AnyDirectory ~]# php --ini
son montre le résultat du chemin
la source
php -i | grep 'php.ini'
, car il trouve n'importe quel php.ini et ne vous dit pas lequel utilise votre installation PHP. En outre, cela peut donner des résultats erronés lorsque la base delocate
données n'est pas à jour.vous indiquera son emplacement, ou à partir de la ligne de commande
la source
PHP est livré avec deux fonctions natives pour montrer quel fichier de configuration est chargé:
Selon votre configuration, Apache et CLI peuvent utiliser des fichiers ini différents. Voici les deux solutions:
Apache:
Ajoutez simplement ce qui suit dans un fichier php et ouvrez-le dans votre navigateur
CLI:
Copiez-collez dans votre terminal:
la source
php_ini_loaded_file
ne soit pas toujours disponible.php_ini_loaded_file
dire la version php> = 5.2.4Hé ... ça a marché pour moi!
la source
php --ini
ça marche, mais c'est juste une autre option :) Il y a généralement une/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
et généralement celle que vous voulez est assez évidente. (cli, apache, cgi)Vous pouvez obtenir plus d'informations sur vos fichiers de configuration en utilisant quelque chose comme:
la source
Pour SAPI: php-fpm
Il n'est pas nécessaire de créer un fichier php.info (ce n'est pas une bonne politique de le laisser au monde à lire de toute façon). Sur la ligne de commande:
Quelque part dans sa sortie, il affichera cette ligne:
Voici une explication plus complète: https://www.cloudinsidr.com/content/how-to-figure-out-your-php-configuration-parameters-without-info-php/
la source
Essayez l'une de ces solutions
Dans votre type de terminal
find / -name "php.ini"
Dans votre type de terminal
php -i | grep php.ini
. Il doit montrer le chemin du fichier commeConfiguration File (php.ini) Path => /etc
<?php
dans une nouvelle lignephpinfo();
Cela vous indiquera l'emplacement de php.iniphp -a
le terminal et tapez phpinfo (); après php initié.la source
Il existe plusieurs méthodes valides déjà mentionnées pour localiser le fichier php.ini, mais si vous êtes tombé sur cette page parce que vous voulez en faire quelque chose dans un script bash:
path_php_ini="$(php -i | grep 'Configuration File (php.ini) Path' | grep -oP '(?<=\=\>\s).*')" echo ${path_php_ini}
la source