php.iniファイルはどこにある?OS別に設定ファイルの場所を確認する方法

php.iniファイルはどこにある?OS別に設定ファイルの場所を確認する方法

公開: 更新:
CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座


php.iniファイルとは

php.iniファイルとは、PHPの動作に関する設定を記述するファイルです。文字コードの設定やエラー表示の制御、使用するライブラリの指定など、PHPの動作を制御する重要な設定を一元管理します。

php.iniファイルの場所はOSやインストール方法、開発環境などによって異なります。PHPの設定を変更する際は、このファイルを編集する必要があるため、まず配置場所を特定することが重要です。

php.iniファイルの場所を確認する方法

php.iniファイルの場所を特定する際、環境によって配置されているディレクトリが異なるため、どこにあるのか分からず困ることがありますよね。場所を確認する方法として、以下の3つがあります。

  • phpinfo()関数で確認する
  • phpコマンドで確認する
  • findコマンドで検索する

コマンドラインが使える環境ではphpコマンドが最も手軽で、Web環境ではphpinfo()関数が便利です。以下では、各方法について詳しく解説していきます。

【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」

phpinfo()関数で確認する

phpinfo()関数はPHPの設定情報を出力する関数で、php.iniファイルの場所を確認できます。以下のコードをPHPファイルとして保存し、ブラウザからアクセスすることによって設定情報が表示されます。

<?php
phpinfo();
?>

上記のコードをinfo.phpなどのファイル名で保存し、Webサーバードキュメントルートに配置します。ブラウザから「http://localhost/info.php」にアクセスすると、PHPの詳細な設定情報が表示されます。

表示された情報の中で「Loaded Configuration File」という項目を確認してください。この項目に記載されているパスが、現在読み込まれているphp.iniファイルの場所です。

表示項目 内容
Configuration File Path php.iniファイルを探すディレクトリ
Loaded Configuration File 実際に読み込まれているphp.iniファイルのパス
Scan for additional .ini files in 追加の設定ファイルを探すディレクトリ

phpinfo()関数で表示される情報には、PHPのバージョンや拡張モジュールの状態など、セキュリティ上で重要な情報が含まれます。確認後は必ずファイルを削除するか、Basic認証で保護されたディレクトリに配置してください。

phpコマンドで確認する

コマンドラインでphpコマンドを使用することによって、php.iniファイルの場所を確認できます。この方法はサーバーにSSH接続できる環境で有効で、最も手軽に場所を特定できます。

--iniオプションを使用すると、読み込まれている設定ファイルの情報が表示されます。

php --ini

上記のコマンドを実行すると、以下のような情報が出力されます。

Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/10-opcache.ini

「Loaded Configuration File」の行に表示されているパスが、実際に読み込まれているphp.iniファイルの場所です。-iオプションとgrepコマンドを組み合わせることによって、php.iniに関する情報だけを抽出することもできます。

php -i | grep php.ini

このコマンドでは、phpinfo()関数と同じ情報をコマンドライン上で出力し、grepコマンドでphp.iniに関連する行だけを抽出します。ブラウザを使わずに確認したい場合に便利です。

findコマンドで検索する

findコマンドを使用することによって、システム全体からphp.iniファイルを検索できます。この方法はPHPのインストール状況に関係なく、ファイルの場所を特定できる確実な方法です。

LinuxやMacでは、以下のコマンドでphp.iniファイルを検索します。

find / -name php.ini

上記のコマンドは、ルートディレクトリから再帰的にphp.iniファイルを検索します。権限エラーが発生する場合は、sudoコマンドを付けて実行してください。

sudo find / -name php.ini

検索結果には、システム内に存在する全てのphp.iniファイルのパスが表示されます。複数のphp.iniファイルが見つかった場合は、phpコマンドやphpinfo()関数で確認した「Loaded Configuration File」のパスと照合し、実際に使用されているファイルを特定してください。

OS コマンド
Linux/Mac find / -name php.ini
Windows dir php.ini /s

Windowsでは、dirコマンドを使用してphp.iniファイルを検索します。検索には時間がかかる場合がありますが、確実にファイルを見つけることができます。

【PR】『Python』を学べる企業・個人向けのプログラミングコース

OS別のphp.iniファイルの一般的な配置場所

php.iniファイルの配置場所は、使用しているOS、PHPのインストール方法、開発環境によって異なります。環境ごとの一般的な配置場所を把握しておくことによって、ファイルを素早く見つけることができます。

環境におけるphp.iniファイルの配置場所として、以下3つが挙げられます。

  • Windows
  • Mac
  • Linux

以下では、各OSにおける一般的な配置場所について、詳しく解説していきます。

Windowsの場合

WindowsにPHPをインストールした場合、php.iniファイルの配置場所はインストール方法によって異なります。単体でインストールした場合とXAMPPを使用した場合で、配置されるディレクトリが変わります。

Windowsでの主な配置場所は、以下のとおりです。

インストール方法 php.iniの場所
PHP単体インストール C:\PHP\php.ini
PHPをインストールしたディレクトリ直下
XAMPP C:\xampp\php\php.ini
XAMPPインストールディレクトリのphpフォルダ内
MAMP C:\MAMP\conf\php【バージョン】\php.ini
MAMPのconfディレクトリ内

PHP単体でインストールした場合、デフォルトではphp.iniファイルは存在しません。PHPインストールディレクトリ内にあるphp.ini-developmentまたはphp.ini-productionファイルをphp.iniにコピーして使用します。

Macの場合

Macでは、「プリインストールされているPHPを使用する場合」と「HomebrewやMAMPを使用する場合」で、php.iniファイルの配置場所が異なります。

Macでの主な配置場所は以下のとおりです。

インストール方法 php.iniの場所
Mac標準 /etc/php.ini
存在しない場合は/etc/php.ini.defaultをコピー
Homebrew /usr/local/etc/php/【バージョン】/php.ini
Homebrewでインストールしたバージョンのディレクトリ内
MAMP /Applications/MAMP/bin/php/php【バージョン】/conf/php.ini
MAMPアプリケーション内のphpディレクトリ

Mac標準のPHPを使用する場合、php.iniファイルが存在しないことがあります。その場合は、/etc/php.ini.defaultファイルをphp.iniにコピーして使用してください。

Linuxの場合

Linuxディストリビューションでは、パッケージマネージャーを使用してPHPをインストールすることが一般的で、ディストリビューションによってphp.iniファイルの配置場所が異なります。Apache用とCLI用で、別々のphp.iniファイルが存在する場合もあります。

Linuxでの主な配置場所は、以下のとおりです。

ディストリビューション php.iniの場所
CentOS/RHEL /etc/php.ini
Apache用とCLI用が同じファイル
Ubuntu/Debian /etc/php/【バージョン】/apache2/php.ini(Apache用)
/etc/php/【バージョン】/cli/php.ini(CLI用)
Docker /usr/local/etc/php/php.ini
公式PHPイメージの標準パス

UbuntuやDebianでは、Apache用とCLI用でphp.iniファイルが分かれています。Web経由での動作とコマンドラインでの動作で異なる設定を適用したい場合、それぞれのファイルを編集する必要があります。

php.iniファイルが存在しない場合は、php.ini-developmentまたはphp.ini-productionファイルをコピーしてphp.iniとして使用します。開発環境ではphp.ini-development、本番環境ではphp.ini-productionの使用が推奨されます。

※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。

ITやプログラミングに関するコラム


ITやプログラミングに関するニュース

ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。

CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプが提供する無料で学べるプログラミングスクール講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア 金融業界の業務効率化を加速するニッセイアセットマネジメントの生成AI×GAS活用研修事例 - IT・プログラミングを知って学べるコネクトメディア 【製造業のDX人材育成事例】デジタル人材の即戦力化を実現する、日本ガイシ株式会社の異動者向オンボーディング研修 - ITやプログラミングを知って学べるコネクトメディア フューチャーアーキテクト株式会社が実現した新入社員向けIT研修プログラムでタスクフォース制度が主体的な学びと成長を生み出す - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【IT新入社員研修】オンラインとオフラインの最適バランスを実現したFutureOneの導入事例 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【新入社員研修】柔軟なハイブリッド型Java研修で実現した新卒20名の成長と成果|サークレイス株式会社 - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/現場により近いところにデジタルを根付かせるDX基礎講座研修|株式会社ブリヂストン - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/業務の効率化・DX推進に向けたIT人材育成への第一歩|株式会社カナエ - ITやプログラミングを知って学べるコネクトメディア 企業・法人向けのIT・プログラミング研修 - ITやプログラミングを知って学べるコネクトメディア

新着記事

対象者別で探す

子供(小学生・中学生・高校生)向け
プログラミング教室検索する

子供(小学生・中学生・高校生)がロボットやプログラミング言語を学ぶことができるオフラインからオンラインスクールを検索、比較することが可能です。

子供(小学生・中学生・高校生)
プログラミング教室検索する

ITやプログラムなどの
最新情報を検索する

日々、新しいITやプログラミング言語の情報が流れていきますが、特定の情報を時系列でニュースやコラムを確認することができます。

ITやプログラムなどの
最新情報を検索する