本文へ移動

macOSでHTML・PHPのローカル開発サーバーを起動する

技術

プロジェクトのpublicフォルダーをPythonまたはPHPの開発サーバーからローカルブラウザへ配信する図

HTMLの表示確認とPHPの実行では、必要なサーバーが異なります。静的なHTMLにはPythonのHTTPサーバー、PHPにはPHPの組み込みサーバーを使うと、システムのApache設定を変更せずに確認できます。

2026年10月8日改訂。macOS標準のPHPやlibphp7.so、Intel Mac固有のパスを前提とした説明を更新しました。

用途に合わせてサーバーを選ぶ

確認するものこのページで使う方法
HTML・CSS・JavaScript・画像Python 3のhttp.server
PHPの処理結果PHPの組み込みWebサーバー
WordPressやDB連携を含む環境全体専用の開発環境・コンテナーなど

Pythonの静的ファイルサーバーでは、PHPのプログラムは実行されません。ソースが配信されるおそれもあるため、PHPファイルを置いたフォルダーを静的サーバーで公開しないでください。

公開するフォルダーを分ける

web-projectをプロジェクトのディレクトリ、publicをブラウザへ配信するファイルだけを置くディレクトリとします。秘密情報や開発ツールの設定は、publicの外に置きます。

web-project/
├── public/
│   └── index.html または index.php
└── 開発用の設定・管理ファイル

publicから外部を指すシンボリックリンクも作らないようにします。ホームディレクトリ全体やパッケージ管理用ディレクトリを公開先にする必要はありません。

HTMLを確認する

Python 3が導入済みであることを確認し、プロジェクトのディレクトリで実行します。127.0.0.1はこのPC自身だけから接続する待受アドレス、8000は使用するTCPポートです。

python3 --version
python3 -m http.server 8000 --bind 127.0.0.1 --directory public

ブラウザでhttp://127.0.0.1:8000/を開きます。public/index.htmlがあればトップページとして表示されます。Python公式資料で--bindと--directoryの動作を確認できます。

PHPを確認する

まずphp --versionで、使用するPHPがあるか確認します。未導入の場合は、導入済みのHomebrewのPHPパッケージを利用できます。既存案件が特定のPHPを要求する場合は、その互換性を先に確認します。

brew install php
php --version

public/index.phpを配置し、プロジェクトのディレクトリで起動します。-Sは待受アドレスとポート、-tは公開ディレクトリの指定です。

php -S 127.0.0.1:8000 -t public

ブラウザでhttp://127.0.0.1:8000/を開きます。PHPの組み込みサーバーは開発・テスト用であり、本番配信には使用しません。PHP公式マニュアルにも利用範囲が明記されています。

停止とトラブル対応

起動したターミナルでCtrl+Cを押すと停止できます。同じポートで複数のサーバーを起動することはできません。

  • Address already in use:別のサーバーが同じポートを使用しています。起動元を確認して停止するか、8001など別の空きポートへ変更します。
  • 404:配信ディレクトリとURLのパス、ファイル名の大文字・小文字を確認します。
  • PHPのコードが表示・ダウンロードされる:PHPを実行できるサーバーへ接続しているか確認します。
  • スマートフォンから開けない:127.0.0.1はPC内専用です。LANで確認する場合は、公開範囲と待受設定を別途見直します。

まず小さな構成で表示・実行を確認し、データベースや本番相当のミドルウェアが必要になった段階で専用の開発環境へ進めると、問題を切り分けやすくなります。

関連記事

カテゴリー
アーカイブ

導入・開発のご相談

検査の自動化、品質予測、工程条件の最適化。
課題の整理からご相談ください。

お問い合わせ