0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

⚡【基礎知識】XAMPPの仕組み・初期設定・よくある落とし穴まとめ

Last updated at Posted at 2025-08-19

📦 XAMPPの基本構造

XAMPPは「Web開発に必要なもの」をまとめて入れられるパッケージです。

機能 役割
✅ Apache Webサーバー。ブラウザからのリクエストを受け、PHPを実行してHTMLを返す
✅ MySQL (MariaDB) データベースサーバー。PHPから接続してデータを保存・検索できる
⬜ FileZilla FTP Server FTP接続用。学習用では不要
⬜ Mercury Mail Server メール送信用。今回は不要
⬜ Tomcat Java用アプリサーバー。PHPには不要
✅ PHP サーバーサイド言語。今回の主役!
⬜ Perl もう1つの言語。今回は不要
✅ phpMyAdmin ブラウザからDBを操作できる便利ツール
⬜ Webalizer アクセス解析ツール。今回は不要
⬜ Fake Sendmail PHPの mail() 関数をローカルで試すためのもの。不要

👉 学習用に最低限必要なのは Apache / MySQL / PHP / phpMyAdmin です。


🤔 なぜPHPが動くの?

仕組みをシンプルにすると👇

  1. ブラウザが http://localhost/index.php にアクセス
  2. Apacheがリクエストを受け取る
  3. .php ファイルをPHPに渡して処理させる
  4. PHPがHTMLを生成してApacheに返す
  5. ApacheがHTMLをブラウザに返す
  6. ブラウザが描画する

👉 Apacheが橋渡し役になり、PHPを実行 → 結果をブラウザへ返す から動いて見えるわけです。


🔑 MySQLの初期パスワード設定方法

XAMPPでは初期状態で rootユーザーにパスワードが設定されていません
ローカル開発なら動きますが、セキュリティ的には危険。

設定手順(phpMyAdmin経由)

  1. http://localhost/phpmyadmin/ を開く

  2. 上部メニュー「ユーザーアカウント」

  3. root@localhost を選び「特権を編集」

  4. 「パスワードを変更」で新しいパスワードを入力

  5. xampp/phpMyAdmin/config.inc.php を編集

    $cfg['Servers'][$i]['password'] = '新しいパスワード';
    

👉 これで以降はパスワード必須になります。


⚠️ ポート競合の確認と解除方法

症状

  • ApacheをStartしても「起動できない」エラー
  • MySQLが起動できない

主な原因

  • 80番 / 443番 → Apacheが使う。Skype, Teams, IISなどと競合しやすい
  • 3306番 → MySQLが使う。他のDBソフトと競合

確認方法(Windows)

コマンドプロンプトで👇

netstat -ano | findstr :80

出力例:

TCP    0.0.0.0:80   0.0.0.0:0   LISTENING   1712

👉 PID 1712 のプロセスが80番を占有している

タスクマネージャーでPID確認 → SkypeやIISなら停止するかポート変更。

解決策

  • 競合アプリ側でポート使用を解除(例:Skypeのポート設定OFF)
  • またはXAMPPでポート変更(例:8080に変更 → http://localhost:8080/ でアクセス)

📂 エラーログの場所

「画面に何も出ない」ときはログを見るのが一番速いです。

  • Apachexampp/apache/logs/error.log
  • MySQLxampp/mysql/data/mysql_error.log

🧩 まとめ

  • XAMPPは「Apache+PHP+MySQL+phpMyAdmin」を一括導入できる便利パッケージ
  • PHPが動く仕組みは Apache → PHP → HTML → ブラウザ
  • rootにパスワードを設定してセキュリティを確保
  • ポート競合は netstat -ano でPIDを確認 → タスクマネージャーで特定 → 停止 or ポート変更
  • 困ったら エラーログを確認

👉 CRUDアプリ開発に入る前に、この辺を押さえておくとトラブルに強くなります💡


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?