“php”の–with-config-file-pathの値を確認
PHP(だけでなくApacheも同じ)などのデフォルト設定ファイルのパスは、
その実行ファイルなり、モジュールなりがコンパイルされた時点で、
どこのパスの「php.ini(やhttpd.conf)」を参照するかの情報を固定で保持しています。
その為、コンパイルされた時の設定によって、
デフォルトの設定ファイルパスは変わる(変えられる)ことになります。
ここではMacOSXバンドルphp(実行ファイル)をコンパイルした際の
「–with-config-file-path」オプション指定を確認する手順についてご紹介します。
概要
“php”の–with-config-file-pathの値を確認
ここで「php」のと記述しているのは、
通常実行ファイルとしての「php」ファイルは、
CLI実行(Command Line Interface)で利用されます。
CLIですのでMaxOSX的に言えば、ターミナルウィンドウからの実行。
Windows的に言えば、コマンドプロンプトからの実行です。
PHPの動作を確認したりする場合以外に、
PHPをCLI実行で利用するケースは稀ではないでしょうか。
※CGI実行に関してはこの限りではありません。
その為、Apacheにモジュールとして組み込んで利用されることが多いPHPは、
Apacheモジュールとしてのデフォルト情報を確認する必要があります。
以下で紹介する内容です。
それでも、こういう確認方法があるということをご紹介しておきます。
なお、以下に示す内容は、
あくまでも当環境に導入されているPHP実行ファイルの内容を示す1例です。
その為、各自がインストールしているPHP自身の内容を確認されることをお勧めします。
「–with-config-file-path」オプションは、
PHP実行ファイルがコンパイルされた時に指定するものです。
その為、コンパイル時の設定によってパスは如何様にも変更が可能なためです。
MacOSX10.7標準バンドルPHP実行ファイルの「–with-config-file-path」値確認
MacOSXには標準でApache利用を想定したPHPが、
最初から組み込まれています。
httpd.confでモジュールをロードするだけで使え、
かつphp実行ファイル(CLI)も既にインストールされています。
そのphp実行ファイルをCLI実行した時に利用される
デフォルト「php.ini」のファイルパスを指定するオプションが、
「–with-config-file-path」オプションです。
調べる詳細な方法は以下でご紹介しています。
上記方法でターミナル実行すると、以下のような情報が得られます。
「Configuretion File(php.ini)Path => 」で表示されているパスが、
デフォルトで「php.ini」が読み込まれるファイルパスを示しています。
この場合「/etc」が表示され「/etc/php.ini」として、
ファイルを配置すると、その「php.ini」の設定が有効になることが分かります。
この設定は上の行の「Configure Command」で指定された
「–with-config-file-path」にて決定されています。
初期設定が以下の設定であることが確認できました。
標準PHP | MacOSX Lion(10.7.5) |
---|---|
php | /usr/bin/php |
php.iniデフォルト(php) | /etc/php.ini |
php.ini.SAMPLE | /private/etc/ |
- | php.ini.default |
module | /usr/libexec/apache2/libphp5.so |
php.iniデフォルト(libphp5.so) | /etc/php.ini |
※php.iniのテンプレートとして提供される「php.ini.default」はファイル検索で調査。
※グレー文字は以下で確認しています。
※モジュール実行した場合でもMac標準PHPは同様の設定がされています。
このようにしてphpの実行ファイルから、
php.iniファイルをどこに置けばいいのか?という疑問の解決が行えます。
以下参考までにその他のインストール形態を採用した場合の例もご紹介します。
MacPortでインストールしたPHP実行ファイルの「–with-config-file-path」値確認
MacPortでインストールされたphp実行ファイルを特定し、
前述の方法で「phpinfo()」情報を確認しています。
初期設定が以下の設定であることが確認できました。
PHP | MacPort |
---|---|
php | /opt/local/bin/php53 |
php.iniデフォルト(php) | /opt/local/etc/php53/ |
php.ini.SAMPLE | /opt/local/etc/php53/ |
- | php.ini-development |
- | php.ini-production |
module | /opt/local/apache2/modules/mod_php53.so |
php.iniデフォルト(libphp5.so) | /opt/local/etc/php53/ |
※php.iniのテンプレートとして提供される「php.ini-development等」はファイル検索で調査。
※グレー文字は以下で確認しています。
MAMPでインストールしたPHP実行ファイルの「–with-config-file-path」値確認
MAMPでインストールされたphp実行ファイルを特定し、
前述の方法で「phpinfo()」情報を確認しています。
ここではコントロールパネルで選択しているバージョン「5.6.10」に着眼しています。
MAMPで導入されたphpの情報です。
初期設定が以下の設定であることが確認できました。
PHP | MAMP |
---|---|
php | /Applications/MAMP/bin/php/php5.6.10/bin/php |
php.iniデフォルト(php) | /Applications/MAMP/bin/php/php5.6.10/conf/ |
php.ini.SAMPLE | /Applications/MAMP/bin/php/php5.6.10/conf/ |
- | php.ini |
module | /Applications/MAMP/bin/php/php5.6.10/modules/libphp5.so |
php.iniデフォルト(libphp5.so) | /Applications/MAMP/bin/php/php5.6.10/conf/ |
※「php5.6.10」部分は有効化しているバージョンによって変わります。
※php.iniのテンプレートとして提供されるファイルはMAMPではそのまま「php.ini」として提供。
※グレー文字は以下で確認しています。
このようにして、CLIとしてPHPを動作させた場合、
ターミナルから「-ini」を利用してphpinfo()を見ることで、
PHPの各種デフォルト設定を確認することができます。
当サイト内のコンテンツおよび画像を含むすべてにおいて、管理人アルゴリズンが著作権を保持しております。
当サイトでご紹介しております写真等につきましては著作権の放棄はしませんが、
ライセンスフリーでご利用いただいて構いません。
コンテンツを有益であると感じていただけましたら非常に光栄です。
ありがとうございます。
サイト内コンテンツを引用される際には、出典元として当サイト(個別記事)へのリンクをお願いいたします。
申し訳ございませんが、無断転載、複製をお断りさせて頂いております。
公開日: