1012

数年前、私は管理している Linux サーバーに Apache 2.2x と PHP 5.3.1 をインストールしました。私は .tar.gz を使用し、(rpms や what-have-you の代わりに) 指示どおりにビルドしました。そして、すべて大丈夫でした。

今日は、PHP ライブラリのように見えるこれをインストールする必要があります。make install までのすべてのステップを実行したところ、.ibm_db2.so が に見つかりました$PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so

大きな問題は、最後のステップでファイルphp.iniを構成することですが、私のシステムにはphp.iniファイルがありません 恐怖の中の恐怖。PHP は正常に動作しますが、もちろん、誰かが GUI を使用してDB2をいじることができるように、私が使用したいこの新しい ibm_db2 thingamajig を除きます。(失敗し、ibm_db2 関数が使用できないことを示す小さな PHP スクリプトを試しました。)

私は数年に一度 PHP を扱わなければならないので、DB2 への Web ベースの GUI アクセスを可能にするために何ができるかについて、非常に基本的なレベルで教えてください。

4

13 に答える 13

974

コマンドラインで次を実行します。

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

それは私のローカル開発マシンからのものです。ただし、2行目は興味深い行です。何も言及されていない場合は、最初のものを見てください。php.iniこれが、PHPがファイルを探すパスです。

スクリプトでphpinfo()を使用して同じ情報をgrepし、ブラウザーで呼び出すことができます。これは、出力の最初のブロックに記載されています。php -iコマンドラインでも同じことをしますが、かなり不快です。

于 2011-12-30T22:22:45.173 に答える
526

これを見つける最良の方法は次のとおりです。

PHP ( .php ) ファイルを作成し、次のコードを追加します。

<?php phpinfo(); ?>

ブラウザで開きます。実際に読み込まれているファイルが表示されます!

OPによる更新:

  1. 以前に受け入れられた回答は、より迅速で便利な可能性がありますが、常に正しいとは限りません。その回答に関するコメントを参照してください。
  2. この回答<?php echo php_ini_loaded_file(); ?>で言及されているより便利な代替手段にも注意してください。
于 2013-06-19T07:32:29.320 に答える
36

次のコマンドを使用して、php.iniLinux でファイル パスを見つけます。

locate php.ini

出力:

/etc/php.ini
/etc/php.ini.rpmnew
/usr/share/doc/php-common-5.4.45/php.ini-development
/usr/share/doc/php-common-5.4.45/php.ini-production

または、この他の方法を試してください:

php --ini

パスの結果を示します。

于 2016-02-17T10:58:28.340 に答える
34

このコマンドは、それを見つけるのに役立ちます

php -r "phpinfo();" | grep php.ini
于 2015-01-09T15:41:02.807 に答える
29

PHP には、ロードされている構成ファイルを表示する 2 つのネイティブ関数が付属しています。

  • php_ini_loaded_fileはロードされた .ini ファイルを返します
  • php_ini_scanned_filesは、追加の ini ディレクトリから解析された .ini ファイルのリストを返します

セットアップに応じて、ApacheCLIは異なる .ini ファイルを使用する場合があります。解決策は次の 2 つです。

アパッチ:

以下を PHP (.php) ファイルに追加して、ブラウザで開きます。

print php_ini_loaded_file();
print_r(php_ini_scanned_files());

CLI:

端末にコピーして貼り付けます。

php -r 'print php_ini_loaded_file(); print_r(php_ini_scanned_files());'
于 2014-06-21T14:19:26.903 に答える
26
phpinfo();

その場所を教えてくれるか、コマンドラインから

php -i
于 2011-12-30T22:24:05.063 に答える
15

これらの解決策のいずれかを試してください

  1. 端末で次のように入力します。find / -name "php.ini"

  2. ターミナルで、 と入力し php -i | grep php.iniます。ファイル パスは「構成ファイル (php.ini) パス => /etc」と表示されます。

  3. PHP ファイルの 1 つにアクセスできる場合は、それをエディター (メモ帳) で開き、新しい行phpinfo();に afterを挿入します。<?phpこれにより、php.iniの場所がわかります。

  4. 対話モードで PHP と対話することもできます。php -a端末に入力phpinfo();して、PHP インタープリターが開始した後に入力するだけです。

于 2019-06-07T16:57:07.370 に答える
7
find / -name php.ini

ねえ...それは私のために働いた!

于 2014-12-22T07:22:11.697 に答える
4

次のようなものを使用して、構成ファイルに関する詳細情報を取得できます。

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

Configure Command =>  './configure'  ...
Loaded Configuration File => /path/to/php.ini
于 2011-12-30T22:25:22.810 に答える