約5000語で解説:XAMPPをインストールしてローカル開発環境を構築する詳細手順
WebサイトやWebアプリケーションを開発する際に、インターネットに公開する前に手元のコンピューターで動作を確認できるローカル開発環境は不可欠です。ローカル環境があれば、インターネット接続なしに開発を進められ、サーバーの設定変更やプログラムのデバッグも自由に行えます。このローカル開発環境を簡単に構築できるツールとして広く利用されているのが「XAMPP」です。
この記事では、XAMPPとは何か、なぜXAMPPを使うのかといった基本的な説明から始め、Windows、macOS、Linuxといった主要なOS別に、XAMPPをダウンロードしてインストールし、基本的な設定を行うまでの詳細な手順を、約5000語のボリュームで徹底的に解説します。さらに、インストール後の確認方法、よくある問題とその対処法、そしてローカル環境でのセキュリティに関する注意点についても触れていきます。この記事を読めば、初心者の方でも迷うことなく、ご自身のコンピューターに安定したローカル開発環境を構築できるようになるでしょう。
1. はじめに:ローカル開発環境とXAMPPの必要性
1.1 ローカル開発環境の重要性
WebサイトやWebアプリケーションは、通常、インターネット上のサーバー(本番環境)で公開され、多くのユーザーがアクセスします。しかし、開発中のプログラムをいきなり本番環境にデプロイしてテストするのは非常にリスクが高い行為です。以下のような問題が発生する可能性があります。
- 公開中のサービス停止: 開発中のプログラムにエラーがあった場合、既存のサービスが停止したり、誤動作したりする可能性があります。
- データの破損/消失: データベースを操作するプログラムに問題があると、重要なデータが失われたり、壊れたりする恐れがあります。
- セキュリティリスク: 不完全なプログラムや設定が、サーバーに脆弱性をもたらす可能性があります。
- 開発効率の低下: 本番環境はインターネット経由でのアクセスになるため、プログラムの変更やデバッグに時間がかかります。インターネット接続が必須という点も制約になります。
これらの問題を避けるために、開発者は「ローカル開発環境」を構築します。ローカル開発環境とは、開発者の手元にあるコンピューター上に、本番環境と同様の動作環境を模倣して作るものです。具体的には、Webサーバー、データベースサーバー、プログラム実行環境などを構築します。
ローカル開発環境のメリットは以下の通りです。
- 安全なテスト: 本番環境に影響を与えることなく、プログラムのテストやデバッグを自由に行えます。
- 開発効率の向上: プログラムの変更や動作確認が手元で即座に行えるため、開発サイクルが早まります。
- インターネット接続不要: 開発作業の多くをオフラインで行えます。
- コスト削減: 本番サーバーのリソースを消費せず、開発段階でのサーバー利用コストを抑えられます。
- 実験的な開発: 新しい技術や機能をリスクなく試すことができます。
特に、PHPやPerlといったサーバーサイドスクリプト言語を使った動的なWebサイトや、WordPress、Joomla!、DrupalなどのCMS(コンテンツ管理システム)を使ったWebサイトを開発する際には、ローカル開発環境が必須となります。静的なHTMLファイルだけであればWebサーバーは必須ではありませんが、それでもブラウザのローカルファイル閲覧とは異なる環境(URLによるアクセスなど)で確認できるローカルサーバーは便利です。
1.2 XAMPPとは何か?
XAMPP(ザンプ)は、Apache Friendsが提供する、Web開発に必要なソフトウェアパッケージです。ローカル開発環境を素早く簡単に構築するために設計されており、以下の主要なコンポーネントが1つにまとめられています。
- Apache (Webサーバー): ユーザーからのリクエストを受け付け、Webページを配信するソフトウェアです。世界で最も広く利用されているWebサーバーの一つです。
- MariaDB (データベースサーバー): MySQLから派生した、高性能なリレーショナルデータベース管理システムです。データの保存、管理、検索を行います。近年のXAMPPでは、MySQLの代わりにMariaDBが採用されていますが、多くの点でMySQLと互換性があります。
- PHP (スクリプト言語): サーバーサイドで動作するプログラミング言語です。動的なWebページの生成、データベースとの連携など、Web開発の中核を担います。WordPressなどのCMSもPHPで動作します。
- Perl (スクリプト言語): PHPと同様に、サーバーサイドで動作するスクリプト言語です。CGIスクリプトなどにも利用されます。
XAMPPの名前はこれらのコンポーネントの頭文字に由来しています(XはCross-Platform、つまりクロスプラットフォームを意味し、Windows, macOS, Linuxなど複数のOSで動作することを示します)。また、XAMPPには上記の主要コンポーネントに加えて、以下の便利なツールも同梱されています。
- phpMyAdmin: WebブラウザからMariaDB(またはMySQL)データベースを管理するためのツールです。データベースの作成、テーブルの操作、データの追加・編集・削除、SQLクエリの実行などをGUIで行えます。
- FileZilla: FTPサーバーソフトウェアです。XAMPPに含まれるものはサーバー側ですが、開発で利用することは少ないかもしれません。通常はFTPクライアントとして利用します。
- Mercury: メールサーバーソフトウェアです。開発中にメール送信機能をテストする際に役立つことがあります。
- Tomcat: Java ServletやJSPを実行するためのアプリケーションサーバーです。Javaを使ったWeb開発を行う場合に利用しますが、PHP開発が主であれば利用しない場合が多いです。
XAMPPを使う最大のメリットは、これらのソフトウェアを個別にダウンロード、インストール、設定する手間が省ける点です。一つのインストーラーを実行するだけで、Web開発に必要な一通りの環境が整います。特にWeb開発初心者にとって、環境構築のハードルを大きく下げてくれるツールと言えるでしょう。
2. XAMPPの構成要素詳解
XAMPPは、前述の通り複数のソフトウェアを組み合わせたパッケージです。ここでは、主要なコンポーネントについてもう少し詳しく見ていきましょう。
2.1 Apache (Webサーバー)
Apache HTTP Server(通称:Apache)は、Webブラウザからのリクエストに応じてWebページを配信するソフトウェアです。Webサーバーの役割は、ユーザーがブラウザのアドレスバーにURLを入力してアクセスした際に、そのリクエストを受け取り、要求されたファイル(HTMLファイル、画像ファイル、PHPファイルなど)を探し出し、ブラウザに送り返すことです。
静的なHTMLファイルの場合、Apacheはそのファイルをそのままブラウザに送り返します。PHPファイルのようなサーバーサイドスクリプトの場合、ApacheはPHPインタープリターにファイルを渡し、実行結果(HTMLなど)を受け取ってからブラウザに送り返します。
Apacheは非常に高機能で、様々な設定を行うことができます。例えば、どのフォルダをWebサイトの公開フォルダ(ドキュメントルート)とするか、特定のURLへのアクセスを別の場所にリダイレクトするか、アクセス制限をかけるか、SSL/TLS(HTTPS)による暗号化通信を有効にするか、といった設定はApacheの設定ファイルで行います。
XAMPPでは、Apacheがデフォルトでポート80(HTTP)とポート443(HTTPS)を使用するように設定されています。これらのポートはWeb通信で標準的に使用されるポートですが、他のアプリケーション(IIS、Skype、別のWebサーバーなど)が既にこれらのポートを使用している場合、Apacheが起動できない原因となります。
2.2 MariaDB (データベースサーバー)
MariaDBは、MySQLから分岐して開発が進められているオープンソースのリレーショナルデータベース管理システムです。MySQLは商用化されたため、コミュニティ主導で開発が続けられるMariaDBが誕生しました。MariaDBはMySQLと高い互換性を持っており、MySQL用に作成された多くのアプリケーション(WordPressなど)は、設定を変更することなくMariaDBでも動作します。
データベースサーバーの役割は、構造化されたデータを効率的に保存、管理、検索することです。Webアプリケーションでは、ユーザー情報、記事の内容、商品情報、設定情報など、様々なデータをデータベースに保存します。プログラム(PHPなど)はデータベースサーバーと通信し、データを読み込んだり、書き込んだり、更新したり、削除したりします。
MariaDBはSQL(Structured Query Language)という標準的な言語を使って操作します。XAMPPに同梱されているphpMyAdminを使えば、SQLコマンドを知らなくてもGUIで基本的なデータベース操作が可能です。
MariaDBはデフォルトでポート3306を使用するように設定されています。他のデータベースサーバー(別のMariaDBやMySQL、SQL Serverなど)が同じポートを使用していると、MariaDBが起動できません。
2.3 PHP (スクリプト言語)
PHPは、Web開発、特にサーバーサイド開発で最も広く使われているプログラミング言語の一つです。HTMLに埋め込んで記述できるのが特徴で、PHPコードを含むファイルは通常.php
という拡張子を持ちます。
PHPスクリプトの実行の流れは以下のようになります。
- ユーザーがブラウザで
.php
ファイルにアクセスする。 - Webサーバー(Apache)がリクエストを受け付ける。
- ApacheがそのファイルがPHPスクリプトであることを認識し、PHPインタープリターに処理を渡す。
- PHPインタープリターがスクリプトコードを上から順に実行する。データベースへの接続、外部APIとの通信、ファイルの読み書き、動的なHTMLコードの生成などを行う。
- PHPスクリプターの実行結果(通常はHTMLコード)がApacheに返される。
- Apacheが受け取った結果をユーザーのブラウザに送り返す。
- ブラウザはそのHTMLコードを解釈してWebページとして表示する。
PHPは非常に機能が豊富で、様々なライブラリやフレームワーク(Laravel, Symfony, CodeIgniterなど)が存在し、効率的な開発をサポートします。WordPressなどのCMSもPHPで書かれています。
XAMPPには、PHPの最新バージョンが同梱されています。また、開発に役立つ様々なPHPエクステンション(機能拡張モジュール)もあらかじめ有効化されていることが多いです。PHPの設定はphp.ini
ファイルで行います。エラー表示の設定、メモリ使用量の上限、ファイルアップロードサイズの上限など、PHPの動作に関する重要な設定をphp.ini
で変更できます。
2.4 Perl (スクリプト言語)
PerlもPHPと同様にサーバーサイドで動作するスクリプト言語です。かつてはCGIスクリプトとしてWeb開発でよく使われていましたが、現在ではPHPの方が主流となっています。しかし、Perlはテキスト処理やシステム管理スクリプトなど、Web開発以外の分野でも広く使われています。
XAMPPにPerlが同梱されているのは、古いシステムとの互換性のためや、Perlを使った開発を行う開発者のためです。PHP開発がメインであれば、Perlを使用しない場合が多いでしょう。
2.5 phpMyAdmin (MySQL/MariaDB管理ツール)
phpMyAdminは、Webブラウザ経由でMySQLまたはMariaDBを管理するための、PHPで書かれたツールです。グラフィカルなユーザーインターフェース(GUI)を提供するため、SQLコマンドを直接入力することなく、データベースの作成、テーブル構造の設計、データの閲覧・編集、ユーザーアカウントの管理など、様々なデータベース操作を直感的に行うことができます。
開発中はデータベースの構造を頻繁に変更したり、テストデータを投入したり、データの状態を確認したりする必要がありますが、phpMyAdminはその作業を効率化してくれます。XAMPPをインストールし、ApacheとMariaDBが起動していれば、ブラウザでhttp://localhost/phpmyadmin/
にアクセスすることでphpMyAdminを利用できます。
デフォルトの状態では、phpMyAdminはセキュリティ設定が緩く、特にルートユーザーがパスワードなしでアクセスできるようになっています。ローカル環境であれば大きな問題にならないことも多いですが、もし誤ってインターネットに公開してしまった場合、非常に危険な状態になります。インストール後にphpMyAdminへのアクセス制限を設定することが推奨されます。
2.6 その他コンポーネント (FileZilla, Mercury, Tomcat)
- FileZilla Server: FTP(File Transfer Protocol)サーバーソフトウェアです。ファイル転送に使われます。ただし、ローカル開発環境で自身がFTPサーバーを立てる機会はあまり多くないかもしれません。通常はFTPクライアントを使ってリモートサーバーにファイルをアップロードする際に利用します。
- Mercury Mail Transport System: メールサーバーソフトウェアです。ローカルでWebアプリケーションの開発中に、メール送信機能が正しく動作するかテストする際に利用できます。ただし、実際のインターネット上のメールサーバーとは設定などが異なるため、あくまで開発・テスト用と考えましょう。
- Tomcat: Apache Tomcatは、JavaサーブレットやJavaServer Pages (JSP) を実行するためのオープンソースのアプリケーションサーバーです。PHPやPerlではなくJavaでWebアプリケーションを開発する場合に利用します。PHP開発が主体の場合は不要です。
XAMPPのインストーラーでは、これらのコンポーネントを選択してインストールするかどうかを決めることができます。PHP/MariaDB/Apache/phpMyAdminが必須のコンポーネントであり、その他は必要に応じて選択すれば良いでしょう。
3. XAMPPをインストールする前の準備
XAMPPのインストールを開始する前に、いくつかの準備をしておくことで、スムーズなインストールとその後の利用が可能になります。
3.1 システム要件の確認
XAMPPをインストールするコンピューターが、XAMPPの動作に必要な最低限の要件を満たしているか確認しましょう。
- OS: Windows (7以降推奨), macOS (10.8以降推奨), Linux (多くの主要なディストリビューションに対応)
- CPU: ほぼ全てのモダンなCPUで動作します。
- メモリ (RAM): XAMPP自体はそれほど多くのメモリを消費しませんが、Webブラウザや開発ツールなど、他のアプリケーションと同時に使うことを考慮すると、2GB以上のメモリがあると快適です。
- ストレージの空き容量: XAMPPのインストールには、バージョンや選択するコンポーネントによりますが、数百MBから1GB程度のディスク容量が必要です。さらに、開発するWebサイトのファイルやデータベースのデータも保存されるため、十分な空き容量を確保しておきましょう。数GB程度の空き容量があれば安心です。
3.2 既存のWebサーバー/データベースサーバーとの競合確認
XAMPPに含まれるApacheやMariaDBは、標準的なポート番号(Apache: 80/443, MariaDB: 3306)を使用します。もし、お使いのコンピューターに既に他のWebサーバー(例: IIS, Nginx, 別のApacheインストール)やデータベースサーバー(例: 別のMySQL/MariaDB, SQL Server, PostgreSQL)がインストールされており、XAMPPと同じポートを使用している場合、XAMPPのコンポーネントが起動できずにエラーが発生します。
インストール前に以下の点を確認しましょう。
- IIS (Windows): Windowsに標準で搭載されているIISが有効になっているか確認します。有効になっている場合は、IISを停止するか、XAMPPのApacheのポート番号を変更する必要があります。通常、IISは「プログラムと機能」->「Windowsの機能の有効化または無効化」から確認できます。
- Skype: Skypeは以前、デフォルトでポート80と443を使用する設定になっていました。現在のバージョンではこの設定はデフォルトで無効になっていますが、念のためSkypeの設定を確認し、これらのポートを使用しないように設定を変更するか、Skypeを一時的に終了させてからXAMPPを起動すると良いでしょう。
- その他のWebサーバー/データベース: 過去に別のWeb開発環境ツール(MAMP, WAMP, Laragonなど)をインストールしたことがある場合、それらに含まれるサーバーソフトウェアが起動したままになっていないか確認しましょう。
もしポートの競合が起こっている場合は、XAMPPのインストール後にApacheやMariaDBの設定ファイルを編集して、使用するポート番号を変更することで対応できます。しかし、多くの場合、競合している他のサーバーを停止するか、XAMPPをインストールする前にアンインストールするのが最も簡単な解決策です。
3.3 必要なファイルのダウンロード
XAMPPのインストーラーは、Apache Friendsの公式サイトからダウンロードできます。
- 公式サイトURL:
https://www.apachefriends.org/
公式サイトにアクセスし、お使いのOS(Windows, macOS, Linux)に対応した最新版のXAMPPインストーラーをダウンロードします。
- バージョン選択: 通常は最新版をダウンロードすれば問題ありません。ただし、開発予定の特定のCMSやフレームワーク、あるいは既存のプロジェクトが古いバージョンのPHPを要求する場合など、特定のPHPバージョンが必要な場合は、以前のバージョンのダウンロードリンクを探す必要があります(公式サイトのArchivesセクションなどにあります)。
- ファイルサイズ: インストーラーのファイルサイズは数百MBになる場合があります。ダウンロードには時間がかかることがあるため、安定したインターネット接続環境で行いましょう。
ダウンロードしたインストーラーファイルは、後で実行しやすい場所に保存しておきます(例: ダウンロードフォルダ、デスクトップ)。
3.4 セキュリティソフト/ファイアウォールの設定
インストール中、XAMPPはシステムファイルやレジストリを変更したり、サーバーソフトウェアをインストールしたりします。この際に、お使いのセキュリティソフト(アンチウイルスソフトなど)やファイアウォールがXAMPPの動作をブロックしてしまうことがあります。
スムーズなインストールのために、一時的にセキュリティソフトやファイアウォールを無効化することが推奨される場合があります。ただし、これはコンピューターを無防備な状態にするため、作業完了後はすぐに有効に戻すことを忘れないでください。また、セキュリティソフトによっては、インストーラーの実行時に警告が表示されるだけで、手動で許可すればそのままインストールできる場合もあります。表示されるメッセージをよく確認し、適切な対応を取りましょう。
特にWindowsのファイアウォールは、ApacheやMariaDBが初めてネットワークにアクセスしようとした際に警告を表示し、通信をブロックすることがあります。インストール後、XAMPPのコンポーネントを初めて起動した際に、ファイアウォールの許可を求めるダイアログが表示されたら、必ず「許可」または「アクセスを許可する」を選択してください。
これらの準備が整ったら、いよいよXAMPPのインストールを開始します。
4. XAMPPのインストール手順 (OS別詳細)
XAMPPのインストール手順は、使用するOSによって異なります。ここでは、Windows, macOS, Linuxそれぞれの環境での詳細な手順を解説します。
4.1 Windows版のインストール手順
Windows版XAMPPは、GUIベースのインストーラーを使って簡単にインストールできます。
-
インストーラーの実行:
- ダウンロードしたXAMPPのインストーラーファイル(例:
xampp-windows-x64-8.x.x-x-VCxx-installer.exe
)を見つけます。 - ファイルを右クリックし、「管理者として実行」を選択します。WindowsのUAC(ユーザーアカウント制御)ダイアログが表示された場合は、「はい」をクリックして続行します。
- ダウンロードしたXAMPPのインストーラーファイル(例:
-
UAC警告について:
- インストーラーを管理者として実行しなかった場合、または特定のフォルダにインストールしようとした場合、XAMPPはUACに関連する警告を表示することがあります。「It seems you have an anti-virus running…」「Because of the user account control (UAC) on your system…」といった内容です。
- 特に、Program Filesフォルダなどのシステム管理下のフォルダへのインストールは、UACの影響で権限の問題が発生しやすく、XAMPPの正常な動作を妨げることがあります。そのため、XAMPPのインストール先にはC:\xamppのようなシステムフォルダ以外のルート直下のフォルダを指定することが推奨されます。警告が表示されたらその内容を確認し、推奨されるインストール先に変更することを検討しましょう。
-
セットアップウィザードの開始:
- インストーラーが起動すると、セットアップウィザードが表示されます。「Welcome to the XAMPP Setup Wizard!」という画面が表示されたら、「Next」をクリックして次に進みます。
-
コンポーネント選択 (Select Components):
- インストールするコンポーネントを選択する画面が表示されます。
- 必須のコンポーネント(Apache, MySQL/MariaDB, PHP, phpMyAdmin)は通常チェックが外せなくなっています。
- オプションのコンポーネント(Perl, FileZilla Server, Mercury Mail Server, Tomcat)はチェックボックスで選択できます。PHP/MariaDBでの開発がメインであれば、これらは必須ではありません。必要なものだけを選択することで、インストールサイズを小さくできます。迷ったら、必須コンポーネントとphpMyAdminだけを選択しても良いでしょう。後からでも追加は可能ですが、通常は再インストールが必要になります。
- 選択が完了したら、「Next」をクリックします。
-
インストール先の指定 (Installation Folder):
- XAMPPをインストールするフォルダを指定します。デフォルトでは
C:\xampp
などが提案されます。 - 前述のUACの問題や権限の問題を避けるため、
C:\Program Files
などのシステムフォルダへのインストールは避け、デフォルトで提案されるC:\xampp
のようなルート直下のシンプルなパスにインストールすることを強く推奨します。 - フォルダを選択または入力し、「Next」をクリックします。フォルダが存在しない場合は作成されます。
- XAMPPをインストールするフォルダを指定します。デフォルトでは
-
インストールオプション (Bitnami for XAMPP):
- Bitnami for XAMPPに関するオプションが表示されることがあります。Bitnamiは、WordPress, Joomla!, Drupalなどの人気CMSやWebアプリケーションをXAMPP環境に簡単にインストールできる機能を提供しています。
- もしBitnamiを使ってCMSなどをインストールする予定があればチェックを入れたままにします。特に予定がなければチェックを外しても構いません。これはインストール後の作業であり、必須ではありません。
- 「Next」をクリックします。
-
インストール実行 (Ready to Install):
- インストール設定の概要が表示されます。内容を確認し、「Next」をクリックするとインストールが開始されます。
-
インストール中の注意点:
- ファイルのコピーと設定が行われます。これには数分から十数分かかる場合があります。
- インストール中にWindowsファイアウォールが「Apache HTTP Server」や「MariaDB」などの通信をブロックしようとする警告が表示されることがあります。ローカル環境でこれらのサーバーを利用するためには、ネットワークからのアクセスを許可する必要があります(ただし、インターネットからのアクセスを許可する設定とは異なります)。警告ダイアログが表示されたら、必ず「プライベートネットワーク(自宅または職場のネットワーク)」にチェックが入っていることを確認し(パブリックネットワークはチェックを外しておくのが安全です)、「アクセスを許可する」または「許可」をクリックします。この許可を怠ると、後でApacheやMariaDBが起動しても、ブラウザからアクセスできなくなります。
-
インストール完了 (Completing the XAMPP Setup Wizard):
- インストールが完了すると、「Completing the XAMPP Setup Wizard」画面が表示されます。
- 「Do you want to start the Control Panel now?」(コントロールパネルを今すぐ起動しますか?)というチェックボックスが表示されます。通常はチェックを入れたまま「Finish」をクリックし、コントロールパネルを起動します。
これでWindows版XAMPPのインストールは完了です。次にXAMPP Control Panelを使って、ApacheやMariaDBを起動させます。
4.2 macOS版のインストール手順
macOS版XAMPPも、GUIベースのインストーラーを使ってインストールします。
-
インストーラーの実行:
- ダウンロードしたXAMPPの
.dmg
ファイル(例:xampp-osx-8.x.x-x-installer.dmg
)をダブルクリックして開きます。 - ディスクイメージがマウントされ、インストーラーのアイコンが表示されます。そのアイコン(例:
XAMPP
)をダブルクリックしてインストーラーを起動します。
- ダウンロードしたXAMPPの
-
セキュリティ設定の許可:
- macOSのセキュリティ設定によっては、ダウンロードしたアプリケーションの実行がブロックされることがあります。「開発元を検証できないため開けません」といったメッセージが表示された場合、「OK」をクリックし、システム環境設定(macOS Ventura以降はシステム設定)を開きます。
- 「セキュリティとプライバシー」(または「プライバシーとセキュリティ」)の「一般」タブ(macOS Ventura以降は「セキュリティ」セクション)に、ブロックされたアプリケーションの実行を許可するオプションが表示されているはずです。「ダウンロードしたアプリケーションの実行を許可」の項目を確認し、XAMPPインストーラーの名前の横にある「このまま開く」または「許可」ボタンをクリックしてインストーラーの実行を許可します。必要に応じてパスワードを入力します。
-
セットアップウィザードの開始:
- インストーラーが起動すると、セットアップウィザードが表示されます。「Welcome to the XAMPP Setup Wizard!」という画面が表示されたら、「Next」をクリックして次に進みます。
-
コンポーネント選択 (Select Components):
- Windows版と同様に、インストールするコンポーネントを選択します。必須コンポーネント(Apache, MySQL/MariaDB, PHP, phpMyAdmin)は選択必須です。Perlやその他オプションは必要に応じて選択します。
- 選択が完了したら、「Next」をクリックします。
-
インストール先の指定 (Installation Folder):
- インストールフォルダを指定します。macOS版のデフォルトのインストール先は通常
/Applications/xampp
です。このままデフォルトを受け入れるのが最も簡単で推奨されます。 - 「Next」をクリックします。
- インストールフォルダを指定します。macOS版のデフォルトのインストール先は通常
-
インストールオプション (Bitnami for XAMPP):
- Windows版と同様にBitnamiに関するオプションが表示されることがあります。必要に応じてチェックを切り替え、「Next」をクリックします。
-
インストール実行 (Ready to Install):
- インストール設定の概要が表示されます。内容を確認し、「Next」をクリックするとインストールが開始されます。
- インストール中にシステムパスワードの入力を求められる場合があります。入力して続行します。
-
インストール中の注意点:
- ファイルのコピーと設定が行われます。これには数分から十数分かかる場合があります。
- macOSのファイアウォールやGatekeeper機能がXAMPPの動作に関連して警告を出すことがあります。システムの指示に従い、XAMPPの動作を許可してください。
-
インストール完了 (Completing the XAMPP Setup Wizard):
- インストールが完了すると、「Completing the XAMPP Setup Wizard」画面が表示されます。
- 「Launch XAMPP.app」のようなチェックボックスが表示されます。チェックを入れたまま「Finish」をクリックし、XAMPPアプリケーションを起動します。
これでmacOS版XAMPPのインストールは完了です。起動したXAMPPアプリケーション(Control Panelに相当)を使って、ApacheやMariaDBを起動させます。
4.3 Linux版のインストール手順
Linux版XAMPPは、GUIインストーラーとCUIベースのインストーラーの両方を提供していることがありますが、一般的にはターミナルを使ったCUIベースのインストールが一般的です。ここではCUIでの手順を説明します。Linuxのディストリビューションによってコマンドが若干異なる場合があります(特にパッケージマネージャー)。
-
インストーラーのダウンロード:
- Apache Friendsの公式サイトから、お使いのLinuxディストリビューション(x86またはx64)に対応した
.run
ファイルをダウンロードします(例:xampp-linux-x64-8.x.x-x-installer.run
)。
- Apache Friendsの公式サイトから、お使いのLinuxディストリビューション(x86またはx64)に対応した
-
実行権限の付与:
- ダウンロードしたファイルには、通常実行権限が付与されていません。ターミナルを開き、以下のコマンドで実行権限を付与します。ファイル名やパスは適宜変更してください。
bash
chmod 755 /path/to/your/download/xampp-linux-x64-8.x.x-x-installer.run
- ダウンロードしたファイルには、通常実行権限が付与されていません。ターミナルを開き、以下のコマンドで実行権限を付与します。ファイル名やパスは適宜変更してください。
-
インストーラーの実行:
- スーパーユーザー権限(root権限)でインストーラーを実行します。システムのパスワードを求められます。
bash
sudo /path/to/your/download/xampp-linux-x64-8.x.x-x-installer.run - GUI環境であれば、インストーラーが起動してウィザードが表示されます。CUI環境の場合は、ターミナル上で対話形式でインストールが進みます。
- スーパーユーザー権限(root権限)でインストーラーを実行します。システムのパスワードを求められます。
-
セットアップウィザードの開始 (CUIの場合):
- インストーラーが起動すると、テキストベースのWelcomeメッセージが表示されます。
----------------------------------------------------------------------------
Welcome to the XAMPP setup wizard.
----------------------------------------------------------------------------
Press [Enter] to continue: - [Enter]キーを押して次に進みます。
- インストーラーが起動すると、テキストベースのWelcomeメッセージが表示されます。
-
コンポーネント選択 (Select Components):
-
インストールするコンポーネントを選択します。各コンポーネントの横に
[x]
のようなチェックが表示され、番号を入力してオン/オフを切り替えます。
“`
—————————————————————————-
Select the components you wish to install:[x] XAMPP Core Files (Required)
[x] Apache (Required)
[x] MySQL (Required)
[x] PHP (Required)
[x] phpMyAdmin (Required)
[x] Perl
[ ] FileZilla Server
[ ] Mercury Mail Server
[ ] TomcatPlease choose the components to install by marking them with an ‘[x]’.
Type the component number to toggle it, or press [Enter] to continue:
“`
* Perlやその他オプションは必要に応じて番号を入力して切り替えます。選択が完了したら[Enter]キーを押します。
-
-
インストール先の指定 (Installation Folder):
-
インストールフォルダを指定します。Linux版のデフォルトは
/opt/lampp
です。特に理由がなければデフォルトのまま進むことを推奨します。
“`
—————————————————————————-
Installation directoryPlease choose a folder to install XAMPP to.
* デフォルトを受け入れる場合はそのまま[Enter]キーを押します。別の場所を指定したい場合はパスを入力して[Enter]を押します。
-
-
インストールオプション (Bitnami for XAMPP):
-
Bitnamiに関するオプションが表示されます。
“`
—————————————————————————-
Setup is now ready to begin installing XAMPP on your computer.Install Bitnami for XAMPP? [y/N]:
``
y
* Bitnamiをインストールする場合はを入力して[Enter]、しない場合は
N`を入力して[Enter]を押します。
-
-
インストール実行:
-
インストール設定の概要が表示され、インストールが開始されます。
“`
—————————————————————————-
Setup is now ready to begin installing XAMPP on your computer.Press [Enter] to continue:
“`
* [Enter]キーを押すとファイルのコピーと設定が行われます。これには数分から十数分かかる場合があります。進行状況がターミナルに表示されます。
-
-
インストール完了:
-
インストールが完了すると、完了メッセージが表示されます。
“`
—————————————————————————-
Setup has finished installing XAMPP on your computer.
—————————————————————————-Launch XAMPP? [y/N]:
``
y
* XAMPPをすぐに起動する場合はを入力して[Enter]、後で手動で起動する場合は
Nを入力して[Enter]を押します。Linux版の場合、
y`を選択するとコントロールパネル(GUI)が起動するか、またはサービスが起動します。
-
これでLinux版XAMPPのインストールは完了です。
5. XAMPPコントロールパネルの使い方 (Windows/macOS)
Windows版とmacOS版には、XAMPPの各コンポーネント(Apache, MariaDBなど)を簡単に管理できる「XAMPPコントロールパネル」が提供されています。Linux版にもGUIのコントロールパネルがありますが、CUIでの管理も一般的です。ここではWindows/macOS版のGUIコントロールパネルを中心に説明します。
5.1 起動方法
-
Windows:
- インストール完了時に起動するよう設定していれば、そのまま起動しています。
- 手動で起動する場合は、スタートメニューまたはデスクトップに作成されたXAMPPフォルダから「XAMPP Control Panel」を探してクリックします。または、インストールフォルダ(例:
C:\xampp
)を開き、xampp-control.exe
を実行します。 - 管理者権限での実行を推奨します。右クリックして「管理者として実行」を選択してください。
-
macOS:
- インストール完了時に起動するよう設定していれば、そのまま起動しています。
- 手動で起動する場合は、Applicationsフォルダ内の
xampp
フォルダを開き、XAMPP.app
をダブルクリックします。または、Launchpadからも起動できます。
5.2 モジュール (Apache, MariaDB) の起動/停止
コントロールパネルのメイン画面には、Apache, MySQL/MariaDB, FileZilla, Mercury, Tomcatといったモジュールが一覧表示されます。それぞれのモジュールについて、以下の操作が可能です。
- Start: モジュールを起動します。例えば、Apacheの「Start」ボタンをクリックすると、Webサーバーが起動します。起動が成功すると、モジュール名の背景色が緑色に変わります。
- Stop: 起動中のモジュールを停止します。
- Admin: 各モジュールの管理画面を開きます。
- ApacheのAdminボタンは、ブラウザで
http://localhost/
を開きます(XAMPP Welcome Page)。 - MySQL/MariaDBのAdminボタンは、ブラウザで
http://localhost/phpmyadmin/
を開きます(phpMyAdmin)。
- ApacheのAdminボタンは、ブラウザで
- Config: 各モジュールの設定ファイルを開きます。
- Apache:
httpd.conf
(メイン設定ファイル)、httpd-ssl.conf
(SSL設定)など。 - MySQL/MariaDB:
my.ini
(Windows) またはmy.cnf
(macOS/Linux) - PHP:
php.ini
- Apache:
- Logs: 各モジュールのエラーログやアクセスログを開きます。サーバーの動作がおかしい場合に原因を調べるのに役立ちます。
開発に必要なのは通常ApacheとMySQL/MariaDBです。これら二つのモジュールの「Start」ボタンをクリックして、両方が緑色に変わることを確認しましょう。もし起動に失敗して赤色表示になる場合は、ログを確認したり、後述のトラブルシューティングセクションを参照してください。
5.3 サービスの管理 (Windowsのみ)
Windows版のコントロールパネルでは、ApacheとMariaDBをWindowsサービスとしてインストールし、Windows起動時に自動的に起動するように設定できます。
- コントロールパネルのモジュール一覧の左側にチェックボックスが表示されています。
- ApacheやMySQL/MariaDBのチェックボックスにチェックを入れると、「サービスとしてインストールしますか?」といったダイアログが表示されます。「Yes」を選択すると、そのモジュールがWindowsサービスとして登録されます。
- サービスとして登録すると、コントロールパネルを閉じていても、Windowsが起動するたびに自動的にサーバーが起動するようになります。開発頻度が高い場合は便利ですが、常に起動しておく必要がない場合はチェックを外しておいても構いません。
- チェックを外すと、サービスとして登録が解除されます。
5.4 設定ファイルの編集
「Config」ボタンをクリックすると、各モジュールの重要な設定ファイルがテキストエディタで開かれます。
- Apache (
httpd.conf
): Webサーバーの基本的な動作、ポート番号、ドキュメントルート(公開フォルダ)、バーチャルホストなどの設定を行います。 - MySQL/MariaDB (
my.ini
/my.cnf
): データベースサーバーのポート番号、メモリ割り当て、ログ設定などの詳細設定を行います。 - PHP (
php.ini
): PHPの動作に関する設定を行います。エラー表示の有効化、メモリ制限、ファイルアップロードサイズ上限、タイムゾーン設定など、開発中に頻繁に編集する可能性があります。
これらの設定ファイルを編集した後は、必ず対象のモジュールをコントロールパネルで「Stop」し、再び「Start」して設定を反映させる必要があります。
5.5 シェル/エクスプローラー/サービスボタン
コントロールパネルの下部には、その他の便利なボタンがあります。
- Shell: ターミナルまたはコマンドプロンプトを開きます。XAMPP環境のパスが通った状態で開かれるため、PHPコマンドやMySQLコマンドなどを直接実行する際に便利です。
- Explorer: XAMPPのインストールフォルダ(例:
C:\xampp
)をエクスプローラー(Windows)またはFinder(macOS)で開きます。Webサイトのファイルを配置するhtdocs
フォルダなどにすぐにアクセスできます。 - Services: Windowsのサービス管理ツールを開きます。ここでXAMPP関連のサービスの状態を確認したり、開始/停止したりできます(Windows版のみ)。
- Quit: コントロールパネルを終了します。各モジュールをサービスとして実行していない場合、コントロールパネルを閉じると起動中のモジュールも停止します。
6. インストール後の確認と初期設定
XAMPPをインストールし、ApacheとMariaDBを起動したら、正しく動作しているか確認し、必要に応じて初期設定を行います。
6.1 XAMPP Welcome Pageへのアクセス
- Apacheモジュールがコントロールパネルで緑色になって起動していることを確認します。
- Webブラウザ(Chrome, Firefox, Safariなど)を開きます。
- アドレスバーに
http://localhost/
またはhttp://127.0.0.1/
と入力してEnterキーを押します。 - 「Welcome to XAMPP for Windows/macOS/Linux!」といったタイトルのXAMPP Welcome Pageが表示されれば、Apacheが正常に起動し、Webサーバーとして機能していることが確認できます。
このWelcome Pageは、XAMPPのインストールフォルダ内のhtdocs
というフォルダに置かれているファイルによって表示されています。htdocs
フォルダは、Webサイトの公開フォルダ(ドキュメントルート)として機能します。
6.2 phpMyAdminへのアクセス
- ApacheとMariaDBモジュールがコントロールパネルで緑色になって起動していることを確認します。
- Webブラウザのアドレスバーに
http://localhost/phpmyadmin/
と入力してEnterキーを押します。 - phpMyAdminのログイン画面、または直接phpMyAdminの管理画面が表示されれば、ApacheとMariaDBが連携して動作しており、phpMyAdminも利用できる状態であることが確認できます。
デフォルトでは、ユーザー名「root」でパスワードなしでphpMyAdminにログインできます。これはセキュリティ上のリスクとなります。ローカル環境であっても、インターネットからアクセスされる可能性がある場合は、ルートユーザーにパスワードを設定することを強く推奨します(後述)。
6.3 Apacheの設定 (ドキュメントルート: htdocs
フォルダ)
Apacheのドキュメントルートは、Webブラウザからhttp://localhost/
でアクセスした際に表示されるファイルが置かれているフォルダです。XAMPPでは、デフォルトでインストールフォルダ内のhtdocs
フォルダがドキュメントルートになっています。
例えば、XAMPPをC:\xampp
にインストールした場合、C:\xampp\htdocs
がドキュメントルートです。ここにindex.html
やindex.php
といったファイルがあると、http://localhost/
にアクセスした際にそのファイルが表示されます。
開発するWebサイトのファイルは、このhtdocs
フォルダ内にプロジェクトごとのフォルダを作成して配置するのが一般的です。例えば、C:\xampp\htdocs\mywebsite\
というフォルダを作成し、そこに開発ファイルを置いた場合、ブラウザからはhttp://localhost/mywebsite/
でアクセスできるようになります。
htdocs
フォルダの場所を変更したい場合は、Apacheの設定ファイルであるhttpd.conf
を編集する必要があります。コントロールパネルでApacheのConfigボタンをクリックし、httpd.conf
を開きます。以下の行を探します。
apache
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
${SRVROOT}/htdocs
の部分を、新しいドキュメントルートのパスに書き換えます。例:"C:/path/to/your/webroot"
(Windowsの場合、パスの区切り文字はスラッシュ/
またはバックスラッシュ\
のどちらでも構いませんが、スラッシュが一般的です)。変更を保存し、Apacheを再起動すると設定が反映されます。
6.4 バーチャルホストの設定 (複数のプロジェクト管理)
複数のWebサイトやWebアプリケーションを開発する場合、それぞれのプロジェクトに固有のドメイン名(例: mywebsite.local
, myapp.test
)を割り当ててアクセスできると便利です。これを実現するのが「バーチャルホスト」設定です。
バーチャルホストを設定することで、htdocs
フォルダ直下に複数のプロジェクトフォルダを作成するのではなく、それぞれのプロジェクトフォルダをあたかも独立したWebサイトのように扱うことができます。
バーチャルホストを設定する手順の概要は以下の通りです。
-
Apache設定ファイル (
httpd.conf
) の編集:- コントロールパネルでApacheのConfigボタンをクリックし、
httpd.conf
を開きます。 - 以下の行を探し、行頭の
#
を削除してコメントアウトを解除します。これにより、バーチャルホスト設定ファイルが読み込まれるようになります。
apache
#Include conf/extra/httpd-vhosts.conf
↓
apache
Include conf/extra/httpd-vhosts.conf - ファイルを保存します。
- コントロールパネルでApacheのConfigボタンをクリックし、
-
バーチャルホスト設定ファイル (
httpd-vhosts.conf
) の編集:- コントロールパネルでApacheのConfigボタンをクリックし、
httpd-vhosts.conf
を開きます。このファイルは通常、インストールフォルダ内のapache\conf\extra\
フォルダにあります。 -
既存のサンプル設定(通常はコメントアウトされています)を参考に、新しいバーチャルホストの設定を追加します。プロジェクトごとに
<VirtualHost *:80>
ディレクティブを追加します。
“`apache
DocumentRoot “C:/path/to/your/project1” # プロジェクト1のフォルダパス
ServerName project1.local # このバーチャルホストに割り当てるドメイン名
# プロジェクト1のフォルダに対する設定
Require all granted # アクセス許可
DocumentRoot “C:/path/to/your/project2/public” # プロジェクト2のフォルダパス (例: Laravelの場合はpublicフォルダ)
ServerName project2.test # このバーチャルホストに割り当てるドメイン名
Require all granted
XAMPPデフォルトのhtdocsへのアクセスを維持したい場合は、以下を追加
DocumentRoot “C:/xampp/htdocs”
ServerName localhost
Require all granted
``
DocumentRoot
*には、プロジェクトのWebサイトファイルが置かれているフォルダの絶対パスを指定します。
ServerNameには、ブラウザでアクセスする際に使用したい任意のドメイン名を指定します(
.localや
.testといった存在しないトップレベルドメインを使うのがローカル環境では一般的です)。
Directory
*ディレクティブで、そのフォルダへのアクセス権限などを設定します。
Require all granted`はローカル環境で全てのアクセスを許可するための設定です。
* ファイルを保存します。
- コントロールパネルでApacheのConfigボタンをクリックし、
-
Hostsファイルの編集:
- 設定した
ServerName
(例:project1.local
,project2.test
)が、お使いのコンピューター自身(localhost
または127.0.0.1
)を指すように、OSのhostsファイルを編集します。hostsファイルは、ドメイン名とIPアドレスのマッピングを定義するファイルです。 - Windows:
C:\Windows\System32\drivers\etc\hosts
- macOS / Linux:
/etc/hosts
- hostsファイルを管理者権限でテキストエディタで開きます。
- ファイルの末尾に以下の行を追加します。
127.0.0.1 project1.local
127.0.0.1 project2.test - IPアドレスは
127.0.0.1
(localhost)を指定し、その後に設定したServerName
を記述します。複数のドメイン名がある場合は、スペースを空けて同じ行に続けて記述することも、複数行に分けて記述することも可能です。 - ファイルを保存します。
- 設定した
-
Apacheの再起動:
- XAMPPコントロールパネルでApacheを「Stop」し、再度「Start」して設定を反映させます。
これで、ブラウザのアドレスバーにhttp://project1.local/
やhttp://project2.test/
と入力することで、それぞれのプロジェクトフォルダにアクセスできるようになります。
6.5 PHPの設定 (php.ini
の編集)
PHPの動作に関する重要な設定は、php.ini
ファイルで行います。コントロールパネルでPHPのConfigボタンをクリックしてphp.ini
を開き、必要に応じて以下の項目などを編集します。
- エラー表示:
- 開発中はPHPのエラーメッセージを画面に表示させるとデバッグに役立ちます。以下の設定を確認します。
ini
display_errors = On ; On にすると画面にエラーを表示
display_startup_errors = On ; On にすると起動時のエラーも表示
error_reporting = E_ALL ; 全てのエラーレベルを表示 (開発時推奨) - 本番環境ではセキュリティや見た目の観点から、エラー表示はOffにし、エラーログに記録するように設定します。
- 開発中はPHPのエラーメッセージを画面に表示させるとデバッグに役立ちます。以下の設定を確認します。
- タイムゾーン:
- PHPの時刻関連関数を使う場合、タイムゾーンを正しく設定する必要があります。
ini
date.timezone = "Asia/Tokyo" ; 日本の場合は "Asia/Tokyo" を指定
- PHPの時刻関連関数を使う場合、タイムゾーンを正しく設定する必要があります。
- メモリ制限:
- PHPスクリプトが使用できるメモリの上限です。大きなデータを扱う処理などでメモリ不足のエラーが発生する場合に増やします。
ini
memory_limit = 128M ; 例: 128メガバイト
- PHPスクリプトが使用できるメモリの上限です。大きなデータを扱う処理などでメモリ不足のエラーが発生する場合に増やします。
- ファイルアップロードサイズ上限:
- HTTP経由でアップロードできるファイルの最大サイズです。
ini
upload_max_filesize = 2M ; ファイルごとの上限 (例: 2MB)
post_max_size = 8M ; POSTデータの全体サイズ上限 (例: 8MB、upload_max_filesizeよりも大きくする)
- HTTP経由でアップロードできるファイルの最大サイズです。
- Short Open Tag:
- PHPコードを
<? ... ?>
という短いタグで記述するかどうかを制御します。デフォルトは無効(Off
)です。<?php ... ?>
を使うのが推奨されます。
ini
short_open_tag = Off
- PHPコードを
php.ini
を編集した後は、必ずApacheを再起動して設定を反映させてください。
6.6 MySQL/MariaDBの初期設定 (ルートパスワードの設定)
デフォルトでは、XAMPPのMariaDB(MySQL)のルートユーザー(ユーザー名:root
)にはパスワードが設定されていません。これはローカル環境での利用を想定しているためですが、セキュリティ上非常に危険です。もし誤ってXAMPPをインターネットに公開してしまった場合、誰でもデータベースにフルアクセスできてしまいます。
ローカル環境でも、少なくともphpMyAdminへのアクセスに制限を設けるか、ルートユーザーにパスワードを設定することを強く推奨します。より安全なのは、開発プロジェクトごとに専用のデータベースユーザーを作成し、そのユーザーにはそのプロジェクトに必要な権限のみを付与することです。
ここでは、phpMyAdminを使ってルートユーザーにパスワードを設定する簡単な方法を説明します。
- phpMyAdmin (
http://localhost/phpmyadmin/
) にアクセスします。 - ユーザー名:
root
、パスワード:なし
でログインします。 - phpMyAdminの画面上部にある「ユーザーアカウント」タブをクリックします。
- ユーザー名「root」、ホスト名「localhost」の行を探し、その行の「編集」または「権限を編集」リンクをクリックします。
- 「パスワードの変更」セクションを見つけ、「パスワードを設定」を選択します。
- 新しいパスワードを2回入力します。
- 画面下部の「実行」ボタンをクリックします。
これにより、ルートユーザーにパスワードが設定されます。パスワードを設定した後、phpMyAdminにアクセスするとログイン画面が表示され、設定したパスワードを入力しないとログインできなくなります。
注意: ルートユーザーにパスワードを設定した場合、PHPスクリプトからデータベースに接続する際も、設定したパスワードを指定する必要があります。例えば、WordPressのwp-config.php
ファイルなど、データベース接続情報を記述している場所の設定を変更する必要があります。
また、phpMyAdmin自体の設定ファイル(config.inc.php
)を編集して、ルートユーザーのパスワードを指定したり、特定のIPアドレス以外からのアクセスを拒否したりといった詳細な設定を行うことも可能です。このファイルは通常、XAMPPインストールフォルダ内のphpmyadmin
フォルダ直下にあります。デフォルトでは認証なしでアクセスできるようになっていますが、より安全にするには、config.inc.php
を編集し、$cfg['Servers'][$i]['auth_type'] = 'config';
となっている部分を'cookie'
に変更するなどして、ログイン画面を表示させるように設定します。
7. 基本的なWebサイトの作成と動作確認
XAMPP環境が整ったら、実際にWebサイトファイルを作成してブラウザで表示させてみましょう。
htdocs
フォルダを開く:- XAMPPコントロールパネルの「Explorer」ボタンをクリックして、XAMPPインストールフォルダを開きます。
- その中の
htdocs
フォルダを開きます。これがWebサイトの公開フォルダです。
- 簡単なHTMLファイルを作成:
htdocs
フォルダ内に新しいテキストファイルを作成します。- ファイル名を
index.html
とします。 - ファイルを開き、以下の内容を記述して保存します。
html
<!DOCTYPE html>
<html>
<head>
<title>My First Local Page</title>
</head>
<body>
<h1>Hello, XAMPP Local Environment!</h1>
<p>This is a test page.</p>
</body>
</html>
-
ブラウザでアクセス:
- Webブラウザを開き、アドレスバーに
http://localhost/
と入力してEnterキーを押します。 - 作成した
index.html
の内容が表示されれば成功です。
- Webブラウザを開き、アドレスバーに
-
簡単なPHPスクリプトを作成:
- 次に、PHPが正しく動作するか確認してみましょう。
htdocs
フォルダ内に新しいテキストファイルを作成します。- ファイル名を
info.php
とします。 - ファイルを開き、以下の内容を記述して保存します。
phpinfo()
関数は、PHPのバージョン、設定、有効な拡張機能など、PHP環境に関する詳細な情報を表示する関数です。
php
<?php
phpinfo();
?>
-
ブラウザでアクセス:
- Webブラウザを開き、アドレスバーに
http://localhost/info.php
と入力してEnterキーを押します。 - PHPの情報が表示された、カラフルなページが表示されれば成功です。PHPが正しく動作しています。
- Webブラウザを開き、アドレスバーに
-
プロジェクトフォルダを作成してアクセス:
htdocs
フォルダ直下に新しいフォルダを作成します。例えばmyproject
という名前にします。myproject
フォルダ内に、先ほど作成したindex.html
やinfo.php
ファイルをコピーします。- ブラウザで
http://localhost/myproject/
と入力してEnterキーを押します。 myproject
フォルダ内のindex.html
が表示されれば成功です。http://localhost/myproject/info.php
にアクセスすれば、myproject
フォルダ内のinfo.php
が実行されます。
このように、htdocs
フォルダ内にフォルダを作成することで、複数のプロジェクトを管理できます。前述のバーチャルホストを設定すれば、http://localhost/myproject/
ではなく、http://myproject.local/
のような、より本番環境に近い形式でアクセスできるようになります。
8. データベースの操作 (phpMyAdmin)
Webアプリケーション開発ではデータベースが必須です。XAMPPにはMariaDBが同梱されており、phpMyAdminを使って簡単に操作できます。
-
phpMyAdminにアクセス:
- ブラウザで
http://localhost/phpmyadmin/
にアクセスします。 - ルートユーザーにパスワードを設定した場合は、ユーザー名「root」と設定したパスワードでログインします。
- ブラウザで
-
新しいデータベースの作成:
- phpMyAdminの画面左側のナビゲーションパネルにある「新規」または「New」をクリックします。
- 「データベースを作成」セクションで、作成したいデータベースの名前を入力します(例:
my_database
)。 - 文字コード(Collation)を選択します。日本語を使う場合は
utf8mb4_unicode_ci
を選択するのが一般的で推奨されます。 - 「作成」または「Create」ボタンをクリックします。
- 左側のナビゲーションパネルに、作成したデータベース名が表示されるようになります。
-
テーブルの作成:
- 作成したデータベース名(例:
my_database
)を左側のナビゲーションパネルでクリックして選択します。 - メイン画面に「テーブルを作成」セクションが表示されます。
- 作成したいテーブルの名前を入力し、カラム(列)の数を指定して「実行」または「Go」をクリックします。
- テーブルのカラムを定義する画面が表示されます。各カラムについて、名前、データ型(例: INT, VARCHAR, TEXT, DATEなど)、長さ/値、インデックス(例: PRIMARY, INDEX)、AUTO_INCREMENT(自動増分)などを設定します。
- 設定が完了したら、画面下部の「保存」または「Save」ボタンをクリックします。
- 作成したデータベース名(例:
-
データの挿入/編集/削除:
- 作成したテーブル名を左側のナビゲーションパネルまたはメイン画面でクリックして選択します。
- 画面上部のタブから「挿入」タブを選択すると、新しい行のデータを入力してテーブルに追加できます。
- 「表示」タブを選択すると、テーブルに保存されているデータの一覧が表示されます。各行の横にある「編集」や「削除」リンクをクリックすることで、データの編集や削除ができます。
-
SQLクエリの実行:
- phpMyAdminの画面上部にある「SQL」タブを選択すると、SQLクエリを直接入力して実行できます。データベースやテーブルの作成、データの操作、複雑な検索など、GUIでは難しい操作を行いたい場合に便利です。
phpMyAdminを使えば、データベースの構造を設計したり、テストデータを投入したりといった作業を視覚的に行うことができます。Webアプリケーションからデータベースに接続し、PHPなどのコードでデータを操作する準備が整います。
9. よくある問題とトラブルシューティング
XAMPPのインストールや起動で問題が発生することは珍しくありません。ここでは、よくある問題とその対処法について説明します。
9.1 Apacheが起動しない (ポート競合: 80, 443)
Apacheが起動しない最も一般的な原因は、ポート80(HTTP)やポート443(HTTPS)が他のアプリケーションによって使用されていることです。
-
原因の特定:
- XAMPPコントロールパネルでApacheの「Start」ボタンをクリックした際にエラーメッセージが表示されます。ログを確認すると、使用中のポートにバインドできないという内容のメッセージ(例:
(OS 10048)通常、各ソケット アドレスに対し、プロトコル、ネットワーク アドレスまたはポートのどれか 1 つのみを使用して許可されます。 : AH00072: make_sock: could not bind to address [::]:80
)が見つかるはずです。 - コマンドプロンプトやターミナルで、特定のポートを使用しているプロセスを確認できます。
- Windows (
cmd
またはPowerShell
を管理者として実行):netstat -ano | findstr :80
またはnetstat -ano | findstr :443
- macOS / Linux (
Terminal
):sudo lsof -i :80
またはsudo lsof -i :443
- Windows (
- 表示されたPID(プロセスID)を使って、タスクマネージャー(Windows)や
ps
コマンド(Linux/macOS)でどのプロセスがポートを使用しているか特定できます。
- XAMPPコントロールパネルでApacheの「Start」ボタンをクリックした際にエラーメッセージが表示されます。ログを確認すると、使用中のポートにバインドできないという内容のメッセージ(例:
-
対処法:
- 競合しているアプリケーションを停止またはアンインストール: IIS、Skype、別のWebサーバー(Nginxなど)、その他の開発環境ツールなどが原因として考えられます。該当するアプリケーションを終了させるか、常駐している場合は停止させます。不要であればアンインストールを検討します。
- XAMPPのApacheのポート番号を変更: ポート競合が避けられない場合、XAMPPのApacheが使用するポート番号を変更します。
- XAMPPコントロールパネルでApacheのConfigボタンをクリックし、
httpd.conf
を開きます。 - 以下の行を探し、ポート番号
80
を別の番号(例:8080
,8000
など)に変更します。
apache
Listen 80 - SSLを使用する場合は、
httpd-ssl.conf
も編集し、Listen 443
や<VirtualHost _default_:443>
のポート番号も変更します。 httpd.conf
内でServerName localhost:80
のような記述があれば、変更したポート番号に合わせる必要があります(例:ServerName localhost:8080
)。- 設定ファイルを保存し、Apacheを再起動します。
- ポート番号を変更した場合、ブラウザでアクセスする際に新しいポート番号を指定する必要があります(例:
http://localhost:8080/
)。
- XAMPPコントロールパネルでApacheのConfigボタンをクリックし、
9.2 MySQLが起動しない (ポート競合: 3306)
MySQL/MariaDBが起動しない原因も、ポート競合(通常ポート3306)が考えられます。
-
原因の特定:
- XAMPPコントロールパネルでMySQLの「Start」ボタンをクリックした際にエラーメッセージが表示されます。ログを確認すると、ポート3306が使用中である旨のメッセージが見つかるはずです。
- ポート80/443と同様に、
netstat
やlsof
コマンドでポート3306を使用しているプロセスを確認します。
-
対処法:
- 競合しているデータベースサーバーを停止またはアンインストール: 別のMySQL/MariaDBのインスタンスや、SQL Serverなどが原因として考えられます。
- XAMPPのMySQL/MariaDBのポート番号を変更:
- XAMPPコントロールパネルでMySQLのConfigボタンをクリックし、
my.ini
(Windows) またはmy.cnf
(macOS/Linux) を開きます。 [mysqld]
セクションを探し、以下の行を追加または編集してポート番号3306
を別の番号(例:3307
)に変更します。
ini
port = 3307- 設定ファイルを保存し、MySQL/MariaDBを再起動します。
- ポート番号を変更した場合、PHPスクリプトやphpMyAdminからデータベースに接続する際に、新しいポート番号を指定する必要があります。phpMyAdminの設定ファイル
phpmyadmin\config.inc.php
も編集し、$cfg['Servers'][$i]['port'] = 3307;
のようにポート番号を指定する必要がある場合があります。
- XAMPPコントロールパネルでMySQLのConfigボタンをクリックし、
9.3 WindowsでのUAC警告とインストール先の制限
WindowsでUAC(ユーザーアカウント制御)が有効になっている場合、Program Filesフォルダなどのシステム管理下のフォルダにXAMPPをインストールすると、権限不足で正常に動作しないことがあります。
- 対処法:
- XAMPPのインストール先を、
C:\xampp
のようなルート直下のフォルダに変更します。 - 既にシステムフォルダにインストールしてしまった場合は、可能であればアンインストールして推奨フォルダに再インストールします。
- XAMPPのインストール先を、
9.4 macOSでのセキュリティ設定によるブロック
macOSでは、ダウンロードしたアプリケーションの実行がデフォルトでブロックされることがあります。
- 対処法:
- インストーラー実行時にブロックされた場合、システム環境設定(またはシステム設定)の「セキュリティとプライバシー」または「プライバシーとセキュリティ」から、インストーラーの実行を許可します。
- XAMPP Control Panelや各サーバーの起動時にブロックされる場合も同様に、システム設定で実行を許可する必要があります。
9.5 ファイアウォールによる通信ブロック
WindowsやmacOSのファイアウォールが、ApacheやMariaDBの通信をブロックすることがあります。
- 対処法:
- XAMPPのコンポーネントを初めて起動した際にファイアウォールの許可を求めるダイアログが表示されたら、必ず「アクセスを許可する」または「許可」を選択します。プライベートネットワークのみ許可するのが安全です。
- 既にブロックされている場合は、OSのファイアウォール設定を開き、Apache(httpd)やMariaDB(mysqld)の通信を許可するように手動で設定を追加します。
9.6 PHPエラーの表示設定 (php.ini
)
PHPスクリプトでエラーが発生しても画面に何も表示されない、または真っ白な画面になる場合は、エラー表示が無効になっている可能性があります。
- 対処法:
php.ini
ファイルを開き、display_errors
とdisplay_startup_errors
をOn
に、error_reporting
をE_ALL
に設定します。log_errors = On
にし、error_log
でログファイルのパスを指定すると、エラーがログに記録されるようになり、本番環境でのデバッグに役立ちます。- 設定変更後、Apacheを再起動します。
9.7 phpMyAdminへのアクセスが拒否される
phpMyAdminにアクセスしようとすると、「アクセス拒否」または「Forbidden」といったエラーが表示される場合があります。
- 原因: Apacheの設定で、phpMyAdminフォルダへのアクセスが制限されている可能性があります。
- 対処法:
- Apacheの
httpd-xampp.conf
ファイルを開きます。このファイルは通常、インストールフォルダ内のapache\conf\extra\
またはapache\conf\vhosts\
フォルダにあります。 - phpMyAdminに関する設定ブロックを探します(
<Directory "/xampp/phpmyadmin">
のような記述がある部分)。 - アクセス制御に関する設定(例:
Require local
,Allow from 127.0.0.1
,Deny from all
など)を確認します。ローカル環境であればRequire all granted
またはRequire local
が適切です。古いバージョンではOrder Allow,Deny
やAllow from All
といった記述が使われていることもあります。 - 設定ファイルを修正し、Apacheを再起動します。
- Apacheの
これらのトラブルシューティングのヒントを参考に、問題の原因を特定し、解決してみてください。それでも解決しない場合は、XAMPPのバージョン情報やエラーメッセージを添えて、Web検索や開発者コミュニティに問い合わせることを検討しましょう。
10. セキュリティに関する注意点 (ローカル環境 vs 公開環境)
XAMPPはあくまで「ローカル開発環境」を構築するためのツールであり、デフォルト設定は開発の容易さを優先しており、セキュリティは高くありません。そのため、XAMPPをインストールしたコンピューターをそのままインターネットに公開することは絶対に避けてください。
特にデフォルト設定でセキュリティリスクが高い点は以下の通りです。
- MariaDB (MySQL) のルートユーザーにパスワードなし: 前述の通り、ユーザー名「root」でパスワードなしで誰でもデータベースにフルアクセスできてしまいます。
- phpMyAdminへのリモートアクセス許可: デフォルトではローカルホスト(127.0.0.1)からのアクセスのみ許可されていることが多いですが、設定によっては外部からのアクセスが可能な場合があります。これも危険です。
- デフォルトのWebサイト構成: XAMPP Welcome Pageが表示される
htdocs
フォルダには、バージョン情報などが含まれたinfo.php
ファイルなどが置かれている場合があります。これらの情報は攻撃者に利用される可能性があります。 - その他の同梱コンポーネント: FileZilla ServerやMercury Mail Serverなども、デフォルト設定ではセキュリティが低い場合があります。
ローカル環境で最低限行うべきセキュリティ対策:
- MariaDB (MySQL) のルートユーザーにパスワードを設定する: phpMyAdminを使ってパスワードを設定します(セクション6.6参照)。
- phpMyAdminへのアクセスをローカルホストのみに制限する: デフォルトで制限されているはずですが、念のため
phpmyadmin\config.inc.php
やApacheのhttpd-xampp.conf
を確認し、外部からのアクセスができないように設定します。 - 不要なコンポーネントは停止するかアンインストールする: FileZilla Server, Mercury, Tomcatなど、利用しないコンポーネントは起動しないように設定し、可能であればインストール時に選択しないか、インストール後にアンインストールします。
htdocs
フォルダ内の不要なファイルを削除または移動する:index.html
,xampp
フォルダ(Welcome Page関連),phpmyadmin
フォルダ(アクセス制限は必要),info.php
(削除推奨)など、開発に必要なファイル以外のものは削除するか、htdocs
の外に移動させます。- XAMPP Control Panelのセキュリティ設定: Windows版のコントロールパネルにはセキュリティ設定を行うボタンがあります。クリックするとブラウザでセキュリティ設定ページが開きます(
http://localhost/security/
)。ここで、ルートユーザーのパスワード設定などが推奨されます。ただし、このページ自体が外部からアクセス可能にならないよう注意が必要です。
最も重要なのは、XAMPPをインストールしたコンピューターを、ファイアウォールやルーターの設定で外部からアクセスできないようにしておくことです。ローカルネットワーク内でのみアクセス可能に設定しましょう。
XAMPPは手軽に環境を構築できる反面、セキュリティは開発環境レベルであることを理解し、取り扱いには十分注意してください。
11. XAMPPのアンインストール
XAMPPが不要になった場合や、新しいバージョンに入れ替えたい場合などは、XAMPPをアンインストールします。
-
XAMPPコントロールパネルで全てのモジュールを停止:
- Apache, MariaDBなど、起動している全てのモジュールを「Stop」ボタンで停止します。
- サービスとして登録している場合は、サービスの登録も解除しておくと、アンインストール後にサービスとして残ってしまうのを防げます(コントロールパネルのチェックを外す)。
-
プログラムのアンインストール:
- OSの標準的な手順に従って、アプリケーションまたはプログラムをアンインストールします。
- Windows: コントロールパネルまたは設定アプリを開き、「プログラムのアンインストール」または「アプリと機能」から「XAMPP」を探して選択し、「アンインストール」をクリックします。XAMPPのアンインストーラーが起動しますので、画面の指示に従って進めます。アンインストール時に、インストールフォルダ内のデータ(
htdocs
フォルダ内のファイルや、MariaDBのデータベースファイルなど)を削除するかどうか尋ねられることがあります。必要なデータは事前にバックアップしておきましょう。 - macOS: Applicationsフォルダを開き、
xampp
フォルダ(デフォルトのインストール先の場合)またはインストールしたXAMPPフォルダをゴミ箱に入れます。その後、ゴミ箱を空にします。ただし、この方法では設定ファイルなどが完全に削除されない場合があります。macOS版のXAMPPには、インストールフォルダ内にアンインストーラー(uninstall
またはuninstall.app
のような名前)が含まれていることが多いので、そちらを実行するのが推奨されます。ターミナルから実行する必要がある場合もあります。 - Linux: ターミナルを開き、スーパーユーザー権限でアンインストーラーを実行します。デフォルトのインストール先が
/opt/lampp
の場合、アンインストーラーは通常そのフォルダ内にあります。
bash
sudo /opt/lampp/uninstall
アンインストーラーが起動したら、画面の指示に従って進めます。データ削除に関するオプションがあれば注意して選択します。
-
残存ファイルの削除 (任意):
- 標準のアンインストーラーで完全に削除されないファイルやフォルダ(特にインストールフォルダ内に独自に作成したファイルや、
htdocs
フォルダ、mysql\data
フォルダなど)が残ることがあります。必要であれば、手動でインストールフォルダ全体を削除します。 - Windowsの場合、レジストリに一部情報が残ることもありますが、通常はそのままにしておいても問題ありません。気になる場合はレジストリクリーナーソフトなどを利用することも可能ですが、誤った操作はシステムに影響を与える可能性があるため注意が必要です。
- 標準のアンインストーラーで完全に削除されないファイルやフォルダ(特にインストールフォルダ内に独自に作成したファイルや、
アンインストールが完了したら、XAMPP関連のサービスやプロセスが完全に終了しているか確認します。
12. まとめ
この記事では、XAMPPを使ったローカル開発環境の構築について、詳細な手順と関連情報を約5000語のボリュームで解説しました。
- ローカル開発環境の重要性と、XAMPPがWeb開発に必要なApache, MariaDB, PHP, Perlといったコンポーネントをまとめて提供し、環境構築を容易にするツールであることを説明しました。
- 主要なコンポーネントそれぞれの役割や、phpMyAdminなどの便利なツールについても掘り下げました。
- インストール前の準備として、システム要件、ポート競合の確認、ファイルのダウンロード、セキュリティソフトの設定について解説しました。
- Windows, macOS, LinuxのOS別に、XAMPPのダウンロードからインストーラーの実行、コンポーネント選択、インストール先の指定、完了までのステップを詳細に説明しました。
- インストール後に利用するXAMPPコントロールパネルの基本的な使い方、モジュールの起動/停止、設定ファイルの編集方法などを解説しました。
- インストール後の確認として、XAMPP Welcome PageやphpMyAdminへのアクセス方法、ドキュメントルートである
htdocs
フォルダについて説明しました。 - 複数のプロジェクトを効率的に管理するためのバーチャルホストの設定方法、開発効率を上げるための
php.ini
の設定、そして重要なセキュリティ対策であるMySQL/MariaDBのルートパスワード設定についても解説しました。 - 開発中に遭遇しやすい問題(ポート競合、起動エラーなど)とそのトラブルシューティング方法を紹介しました。
- XAMPPが開発用ツールであり、そのままインターネットに公開すべきではないこと、ローカル環境でも最低限のセキュリティ対策が必要であることを強調しました。
- XAMPPが不要になった場合のアンインストール手順も説明しました。
この記事を参考に、ご自身のコンピューターにXAMPPを使った安定したローカル開発環境を構築できたことと思います。
ローカル開発環境があれば、インターネット接続に左右されず、安全かつ効率的にWebサイトやWebアプリケーションの開発を進めることができます。HTML、CSS、JavaScriptといったフロントエンド技術はもちろん、PHPを使ったバックエンド開発や、WordPressなどのCMSを使ったサイト構築、さらにはLaravelやSymfonyといったPHPフレームワークを使ったより複雑なアプリケーション開発など、様々なWeb開発に挑戦する基盤が整いました。
次のステップとしては、XAMPP環境上にWordPressをインストールしてブログサイトを構築してみたり、簡単なPHPとMySQLを使った問い合わせフォームを作成してみたり、お好みのPHPフレームワークを導入してみたりと、実際に手を動かしてWeb開発のスキルを磨いていくのが良いでしょう。
XAMPPはローカル開発の強力な味方です。この記事が、あなたのWeb開発の旅の一助となれば幸いです。頑張ってください!