XMAPP内のApachは、ポート80と443を使用していますので、 他のアプリケーションが既にそのポートを使用していると起動できません。そのため、ポートの解放の操作が必要です。
ポートを開放する
ApachとMySQLをStartする前に「ポート80と443を開放する」必要があります。
具体的にどうなるか、そして、どう対応するか実際に試してみます。
Saveをクリックします。
XAMPPコントロール・パネルが表示されます。ApachとMySQLをStartします。
MySQLをStartするとセキュリティの重要な警告が表示されます。「アクセスを許可する」をクリックします。
MySQLは起動できましたが、Apachが起動できません。
XMAPP内のApachは、ポート80と443を使用していますので、 他のアプリケーションが既にそのポートを使用していると起動できません。そのため、ポートの解放の操作が必要です。
、ポート80と443を使用するアプリケーション
ポート80と443を使用するアプリケーションは、いくつか知られています。 XAMPP側で対応するか、他のアプリケーション側で対応するかによっていくつかの方法があります。
ネット上で紹介されているXAMPPでApachを起動する際に問題になるアプリケーションでよく登場する例です。 Windows10になって問題が発生した場合は、2番目の「ンターネット インフォメーション サービス(IIS)」が原因と判断して良いと思います。
- Skype
- インターネット インフォメーション サービス(IIS)
- WebMatrix
Skypeが、ポート80と443を使用しないように設定する
Skypeツールを選択し、ツールから接続設定をクリックします。
「追加の受信接続にポート80と443を使用」のチェックを外し、「保存」を選択します。
Skypeツールを閉じます。
さらに、確認ダイアログが現れるので、「終了」を選択します。
再度、Skypeを起動し、設定を有効にし、Skypeを終了します。
XAMPPをタスクバーにピン止めし、終了します。
Skypeで、ポートを終了してもXAMPPでApachが起動できない場合があります。
XAMPPのインストールフォルダーに、開始、終了、コントロール表示を行う、exeファイルがあります。
インターネット インフォメーション サービス(IIS)を停止する
Skypeで、ポートを終了してもXAMPPでApachが起動できない場合があります。
パソコンを再起動してから、改めて「XAMPP」を起動し、「Apache」を起動しました。 しかし、状況は変化しません。これは、Skypeの問題だけではないようです。
「Netstat」をクリックすると、どのアプリケーションがどのポートを使っているか確認できます。 赤い文字のメッセージは「Port 80 がPID 4で使用されているため、XAMPPがスタートできない」とのメッセージです。
XAMPPは、Windows10にインストールしています。Port 80は、Systemが使用しています。この場合は、どうしたらいいのでしょう。
インターネット上で検索して見ると情報を見つけることができました。
Port 80 とは?
Port番号は、コンピュータが通信するときに相手先を指定するための番号で、 その80(番)は、HTTPが標準となっています。通常、Webサーバーは、port80をHTTPに割り当てています。
このエラーメッセージは、port80が他のプロセス(PID 4)に割り当てられ、XAMPPに割り当てられない状況を示しています。
PID(プロセスID) 4 とは?
PIDは、OSが実行中のプロセスを識別するための番号です。
どのアプリケーションが、Port 80を使用しているか調べるために、タスクマネージャーを起動し、詳細タブから、PID 4を探します。
Systemは、Windowsそのものですので、Windowsがport80を使用していること、 すなわち、Windowsがサーバー機能を持っていることを示しています。(停止することはできません)
Windows7や8には、自宅のパソコンをサーバーに構築するための「インターネット インフォメーション サービス(IIS)」があり、 この機能が有効になっていると、Windowsでport 80が使用状態となります。
スタートボタンを右クリックして、「プログラムと機能」を選択します。左側の「Windowsの機能の有効化または無効化」を選択します。
「インターネットインフォメーションサービス」のチェックを外します。
改めて、XAMPPコントロール・パネルを起動します。赤文字の警告が表示されていません。改めて、ApacheとMySQLを起動します。
ApachをStartするとセキュリティの警告ダイアログが表示されますので、「アクセスを許可する」をクリックします。 続いて、MySQLもStartします。こちらのセキュリティの警告ダイアログは先ほど許可をしていますので、表示されません。
起動できました。
ポートを開放する別の方法
サービスとして起動する
XAMPPでPort 80をPID 4から解放(外部サイト)
XAMPPで使用するそれぞれの機能をWindowsでサービスとして実行することで、Portの重複指定を避けます。
Apatchが動作するPort番号を変更する
XAMPPでインストールしたApacheが起動しないとき(外部サイト)
Apacheインストール先(例:C:\xampp\apache\conf)にある設定ファイルhttpd.confを開いて、「Listen」をポート80から任意の番号(例:81など)に変更します。
Microsoft Web Deployをアンインストールする
Windowsでポート80がPid 4で使われている場合の対処方法
「Microsoft Web Matrix」をインストールして、ポート80が利用されている場合、「Microsoft Web Deploy」をアンインストールと、Port 80が開放されます。