| この記事の要点 |
|
XAMPP とは
XAMPP (ザンプ) はローカル PC に Apache / MariaDB(MySQL) / PHP / Perl をまとめて入れる開発スタックです。Apache Friends が無償で配布しており、PHP 学習や WordPress 検証、Laravel 開発などに広く使われています。本ガイドでは Windows での導入手順を、画面例とともに解説します。
ダウンロード
- https://www.apachefriends.org/jp/ にアクセス
- OS (Windows / Linux / OS X) を選択
- 使いたい PHP のバージョンを選んでダウンロード (例: PHP 8.2.x)
- ダウンロードしたインストーラ (例:
xampp-windows-x64-8.2.12-0-VS16-installer.exe) をダブルクリック

インストーラの起動
UAC (ユーザーアカウント制御) のダイアログが出たら「はい」。C:\Program Files 配下にインストールするとアクセス権の警告が出るので、デフォルトの C:\xampp をそのまま使うのが安全です。

「Setup - XAMPP」ウィザードで Next を押して進めます。
コンポーネント選択
次の画面で導入するコンポーネントを選びます。最低限 Apache / MySQL (MariaDB) / PHP / phpMyAdmin をチェックすれば PHP/MySQL アプリ開発が可能です。

| コンポーネント | 必須 | 説明 |
|---|---|---|
| Apache | ★ | Web サーバ本体 |
| MySQL (MariaDB) | ★ | データベースサーバ |
| PHP | ★ | サーバサイド言語 |
| phpMyAdmin | ★ | MySQL の Web 管理ツール |
| Perl | 不要 | レガシー CGI 用 |
| FileZilla FTP Server | 不要 | FTP サーバ |
| Mercury Mail | 不要 | メールサーバ |
| Tomcat | 不要 | JSP/Servlet サーバ |
インストール先の指定
デフォルトの C:\xampp を推奨します。理由は次の通りです:
- Program Files 配下は Apache が設定ファイル書き換え時に権限エラーで失敗することがある
- パスが短く、コマンドラインで扱いやすい
- ドキュメントや公式 FAQ がすべて C:\xampp 前提で書かれている

言語選択とインストール実行
言語選択で英語 (English) かドイツ語のいずれかを選びます (日本語は無し)。続いて Next で実際にファイルがコピーされます。所要時間は 1〜5 分程度です。

途中で Windows ファイアウォールの通知が出たら、「プライベートネットワーク」にチェックを入れてアクセスを許可します。公開ネットワーク (Wi-Fi カフェ等) は許可しないことを強く推奨します。
インストール完了 → Control Panel 起動
完了画面で「Do you want to start the Control Panel now?」にチェックを入れて Finish。XAMPP Control Panel が立ち上がります。

XAMPP Control Panel の使い方
Apache / MySQL の行の Start ボタンを押すとサーバが起動します。緑色になれば正常稼働中、赤色のままならポート競合などのエラーです。

| ボタン | 機能 |
|---|---|
| Start / Stop | サービス起動/停止 |
| Admin | 各サービスの管理画面 (Apache → localhost、MySQL → phpMyAdmin) |
| Config | 設定ファイル (httpd.conf / my.ini 等) を開く |
| Logs | エラーログを開く |
| Shell | XAMPP 環境のコマンドプロンプト |
動作確認
ブラウザで http://localhost/ にアクセスし、XAMPP のダッシュボードが表示されれば成功です。

PHP 動作確認
C:\xampp\htdocs\phpinfo.php を作成して以下を保存:
<?php phpinfo(); ?>
ブラウザで http://localhost/phpinfo.php にアクセスし、PHP バージョン情報が表示されれば PHP は正常動作しています。
MySQL / phpMyAdmin
http://localhost/phpmyadmin/ で MySQL 管理画面に入れます。初期パスワードは空、ユーザは root。
ポート 80 が使用中エラー
Apache 起動時に次のエラーが出る場合:
Error: Apache shutdown unexpectedly.
Port 80 in use by "Unable to open process" with PID 4!
Apache WILL NOT start without the configured ports free!
原因はIIS / Skype / W3SVC / World Wide Web Publishing Service等が 80 番を占有していること。対処:
# 80 番を使っているプロセスを特定 (管理者)
netstat -ano | findstr :80
# 例: TCP 0.0.0.0:80 ... LISTENING 4
# PID 4 は System プロセス → IIS / SQL Server Reporting Services / W3SVC
# サービス停止
net stop W3SVC
# または Apache のポートを変更
# C:\xampp\apache\conf\httpd.conf の Listen 80 → Listen 8080
# Listen 8080
# ServerName localhost:8080
ポート変更後はブラウザで http://localhost:8080/ でアクセス。
セキュリティ設定 (XAMPP Security)
初期の MySQL root はパスワード未設定で危険。http://localhost/security/ から:
- MySQL root パスワード設定
- phpMyAdmin に Basic 認証追加
- XAMPP ディレクトリ保護
これら 3 点を必ず設定しましょう。本番では XAMPP を使わず、Linux + 個別 apache/php-fpm/mysql で本格運用が標準です。
FAQ
Q: Windows 11 でも使えますか
A: 公式に Windows 10 / 11 対応。問題なく動作します。
Q: Apache の DocumentRoot を変えたい
A: C:\xampp\apache\conf\httpd.conf の DocumentRoot と <Directory> を変更し、Apache 再起動。
Q: MySQL が起動しない
A: C:\xampp\mysql\data\mysql_error.log を確認。多くは ibdata1 破損か mysqld のポート 3306 競合。最悪 data フォルダ退避 → backup から復元。
子ページはありません
- インストール方法
- ポート番号の競合
- ドキュメントルート(htdocs)の変更方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスのソフト一覧|Blender・Metasequoiaと用途別の選び方
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Visual Studio「デザイナーを表示できません」エラーの原因と対処 2026-10-28 12:06:00
- SSH 認証に失敗しました。再試行してください の対処 2026-10-28 12:06:00
- SSH2 秘密鍵の読み込みに失敗しました の原因と対処 2026-10-28 12:06:00
- TeraTerm のよくあるエラーと対処法完全ガイド — Connection refused / 2026-10-28 12:06:00
- Visual Studio エラー一覧|コンパイルエラー・警告の確認方法と対処 2026-10-28 11:39:57
- Whitelabel Error Page の原因と消し方|Spring Boot のエラーページ 2026-10-28 11:39:57
- Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法 2026-10-28 11:39:57
- SQL WHERE 句完全ガイド 2026-10-28 11:39:57
- SQL JOIN 完全ガイド (INNER/LEFT/RIGHT/FULL OUTER) 2026-10-28 11:39:57
- tomcat の起動 / 停止ログと catalina.log・catalina.out の違い 2026-10-28 10:24:23
- Tomcat の起動確認方法 5 つ|localhost:8080・ポート・プロセス・ログ 2026-10-28 10:24:23
- Oracle 19c COMMITの使い方: 暗黙コミット・自動確定・応答不明時の確認 2026-10-28 09:59:09
- Oracle 19c DELETE文|削除対象の確認・COMMIT前の判断・ROLLBACKの条件 2026-10-28 09:59:09
- Oracle 19c INSERT文|INSERT ALL・SELECT・RETURNINGとMERGEの使い分け 2026-10-28 09:59:09
- Oracle 19cのトランザクション制御|COMMIT・ROLLBACK・分離レベルと接続設定 2026-10-28 09:59:09