Windows のパソコンに XAMPP(ザンプ)を入れて、PHP の開発を手元で試せるようにする手順です。XAMPP を入れると、Web サーバー(Apache)、データベース(MariaDB)、PHP がまとめて使えるようになります。
XAMPP は、自分のパソコンの中で試すためのものです。使いやすいように、守りより手軽さを優先した設定になっているので、インターネットに公開するサーバーには使いません。
今の版と中身
2026年10月11日に公式サイトで確かめたところ、Windows 版は 8.0.30、8.1.25、8.2.12 の3つが配られていました。版の番号は、入っている PHP の版と同じです。いちばん新しい 8.2.12 には、次のものが入っています。
| 中身 | 版 |
|---|---|
| Apache | 2.4.58 |
| MariaDB | 10.4.32 |
| PHP | 8.2.12 |
| phpMyAdmin | 5.2.1 |
この版は2023年から更新されていません。Laravel などの新しい版は、もっと新しい PHP を求めることがあるので、使いたいフレームワークがどの PHP で動くかを先に確かめておきます。
インストールする
- XAMPP の公式サイトから、Windows 向けのインストーラー(
.exe)をダウンロードする。特に理由がなければいちばん新しい版を選ぶ - インストーラーを実行する。ユーザーアカウント制御(UAC)についての注意が出たら「OK」で進める
- 入れるもの(Select Components)は、そのままでよい
- 入れる場所は、最初の
C:\xamppのままにする。C:\Program Filesの中に入れると、書き込みの権限でうまく動かないことがある - 言語は「English」を選ぶ
初めて Apache を動かしたときに、Windows のファイアウォールの画面が出たら、「プライベート ネットワーク」だけを許可します。「パブリック ネットワーク」は許可しないでおきます。
コントロールパネルで動かす
「XAMPP Control Panel」を開き、Apache と MySQL の「Start」をクリックします。名前のところが緑色になれば動いています。止めるときは「Stop」をクリックし、右側の「Quit」でパネルを閉じます。

パネルでは「MySQL」と表示されますが、中身は MySQL から分かれて作られた MariaDB です。使い方はほとんど同じで、Laravel などからも MySQL としてつなぎます。
コントロールパネルを開いたときに「Cannot create file xampp-control.ini」と出るときは、「xampp-control.iniのアクセス拒否エラーの原因と直し方」をご覧ください。
PHP が動くか確かめる
Apache が公開するファイルの置き場所(ドキュメントルート)は C:\xampp\htdocs です。ここに test.php を作り、次のように書いて保存します。
<?php
echo "Hello XAMPP!";ブラウザで http://localhost/test.php を開き、「Hello XAMPP!」と表示されれば PHP が動いています。

PHP だけが書かれたファイルでは、最後の ?> は書かなくても構いません。書かないほうが、後ろに余計な空白が入って困ることがありません。
root のパスワードを設定する
入れたばかりの XAMPP では、データベースの管理者(root)にパスワードがありません。自分のパソコンの中だけで使うとしても、設定しておきます。
- コントロールパネルの MySQL の「Admin」で phpMyAdmin を開く
- 「ユーザアカウント」を開く
- ユーザ名が
rootの行ごとに「権限を編集」→「パスワードを変更する」で設定する
root は、ホスト名が localhost、127.0.0.1、::1 の3つあります。3つとも同じパスワードにしておきます。どれかが空のままだと、つなぎ方によってはパスワードなしで入れてしまいます。
phpMyAdmin にログイン画面を出す
パスワードを設定すると、phpMyAdmin が「アクセス拒否」で開けなくなります。ログイン画面でパスワードを入れる形にするため、C:\xampp\phpMyAdmin\config.inc.php の次の行を書き換えます。
// 変更前
$cfg['Servers'][$i]['auth_type'] = 'config';
// 変更後
$cfg['Servers'][$i]['auth_type'] = 'cookie';保存して phpMyAdmin を開き直すと、ログイン画面が出ます。
アプリの設定も合わせる
Laravel など、データベースにつなぐアプリをすでに作っているときは、その設定(Laravel なら .env の DB_PASSWORD)も新しいパスワードに変えます。
ポートがぶつかって起動しないとき
Apache は80番(と443番)、MySQL は3306番のポートを使います。ほかのソフトが同じ番号を使っていると、「Start」を押してもすぐ止まります。
どのソフトが使っているか調べる
コマンドプロンプトで次のように実行すると、そのポートを使っているプログラムの番号(PID)がいちばん右に出ます。
netstat -ano | findstr ":80 "
tasklist /FI "PID eq 1234"2行目の 1234 を、出てきた番号に置き換えると、プログラムの名前が分かります。よくあるのは、Windows の IIS(World Wide Web 発行サービス)や、ほかに入れた Web サーバーです。使っていなければ、そちらを止めるのがいちばん簡単です。
Apache のポートを変える
ぶつかるソフトを止められないときは、Apache のポートを変えます。コントロールパネルの Apache の「Config」→「Apache (httpd.conf)」を開き、次の行を変えて保存します。
# 変更前
Listen 80
# 変更後
Listen 8080Apache を動かし直すと、以後は http://localhost:8080/ のようにポート番号を付けて開きます。443番がぶつかるときは、「Config」→「Apache (httpd-ssl.conf)」の Listen 443 を同じように変えます。
MySQL のポートがぶつかるとき
ほかに MySQL を入れていると、3306番がぶつかります。そちらのサービスを止めるか、MySQL の「Config」→「my.ini」の port=3306(2か所あります)を 3307 などに変えます。変えたときは、Laravel の .env の DB_PORT も合わせます。
MySQL が「shutdown unexpectedly」と出て起動しないときは、「MySQLが「shutdown unexpectedly」で起動しないときの直し方」をご覧ください。備えとして、「MySQLを定期的に自動バックアップする」も設定しておくと安心です。
まとめ
- XAMPP は手元で試すためのもの。Windows 版の最新は 8.2.12(PHP 8.2.12、MariaDB 10.4.32)で、新しいフレームワークには PHP が古いことがある
C:\xamppに入れ、ファイアウォールはプライベートネットワークだけ許可するhtdocsにtest.phpを置いて、http://localhost/test.phpで確かめる- root のパスワードは3つとも設定し、phpMyAdmin は
cookieに。アプリの設定も合わせる - 起動しないときは
netstatでポートを使っているソフトを調べ、止めるかポートを変える



コメント