エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法

      2018/03/10

XAMPPの Apacheが起動しない原因を確認する

 

XAMPPのエラーメッセージの内容を確認

 
XAMPPをインストールしてみたけど、下記のような赤いエラーメッセージが表示されて Apacheが起動しない!そんな場面は多々あると思います。
 
というか、Windows環境に XAMPPをインストールした場合は、ほぼエラーメッセージが出ると思っておいていいでしょう。
 
01_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 

 
 
このエラーメッセージから 2つのエラーが発生したと書いてありますが、2つの内容は同じです。
「XAMPPで利用する 80番ポートと 443ポートが他のプログラムと使用がバッティングしていますので、Apacheを起動できません。」
というものです。
 
また、それぞれ下記のとおりバッティングしているプログラムに対する情報も記載してあります。
「80番ポートは『Unable to open process』が使用していて、443ポートは『Skype.exe』が使用しています。」
 
 
80番ポートは HTTPが標準で利用するポートで、443番ポートは HTTPS(SSL)で利用するポートです。
 
その HTTP、HTTPSのそれぞれで利用する 80番、443番のポートを XAMPPの中にある Apacheが Webサーバとして使うのですが、他のプログラムがすでに利用しているため起動できない、というエラーです。
 
 

XAMPPの Apacheのエラー解消の選択肢の確認

 
対応の選択肢は 2つ。
 
・XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する
・他のプログラムが使っている 80番ポート、443番ポートを開放する
 
 
2つの選択肢のメリット、デメリットは以下のようになります。
 
XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する」のメリットは、
XAMPPの設定のみで対応が可能なことから、作業内容を比較すると作業は簡単と言えます。また、確実に不具合を解消することが可能です。
ただ、configを変更しますので、エンジニア向きと言えるかもしれません。
 
また、作成したサイトを見る際には下記の様にポート番号付きの URLになります。
 http://localhost:8080
 
XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する」の対応を行い、ローカル環境にドメインを設定した場合もポート番号付きの URLになりますので、ドメインでアクセスできる環境を作りたいときはこの方法は採用できません。
 
アクセスの URLの一例
 http://example.com:8080
 
 
他のプログラムが使っている 80番ポート、443番ポートを開放する」のメリットは、「XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する」の対応を行い、ローカル環境にドメインを設定した場合、ポート番号なしでアクセスが可能になることです。
アクセス時の URLを本番環境とも一致させる必要があるなどの制約がある場合はこちらの方法を採る必要があります。
 
アクセスの URLの一例
 http://example.com
 
また、configファイルを編集せず、Windowsの操作(GUIの操作)だけで対応が可能なため、非エンジニア向きといえるかもしれません。
 
ただ、80番、443番ポートがバッティングしているプログラムが、ここで想定しているプログラム以外のものであった場合は、問題が解消しない可能性、追加の対応の必要性があります。
 
 

XAMPPの Apacheのエラー解消の選択肢のまとめ

 
2つの方法のメリットをまとめると、私のようにローカルの実験環境として使うため、URLにポート番号が入っていてもまったく気にしない場合は、前者の「XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する」を選択するといいでしょう。
URLを所定のものにする必要がある場合は、「他のプログラムが使っている 80番ポート、443番ポートを開放する」を選択するといいでしょう。
 
あとから変更することもできますので、よく分からない方は前者の「XAMPPの Apacheが使うポートを変更する」を選択しておけばいいのではないでしょうか。
 
 

XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する

 
「XAMPPの Apacheが使うポートを 80番、443番から別のものに変更する」の方法は、XAMPPに入っている Apacheが使うポートを標準仕様の 80番、443番から別の番号に変えることで、バッティングを回避する、という方法です。
 
あとからインストールした XAMPPの Apacheがバッティングしているので、あとからインストールした XAMPP側を変更する、という考え方ですね。
 
XAMPP自体の設定を変更しますので、確実に対応が可能です。
 
 

1.httpd.confを編集

 
httpd.confファイルを編集します。
 
コントロールパネルの「Config」-「Apache(httpd.conf)」を選択し、httpd.confファイルを開きます。
 
02_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
もしくは、ファイル実体は「c:\xampp\apache\conf\httpd.conf」にありますので、これを直接開いても問題ありません。
 
バージョンによって違いますが、40~60行目辺りの「Listen 80」を変更します。
「80」で検索をすると探しやすいでしょう。
 

 
続いて、180~230行目辺りの「ServerName localhost:80」を変更します。
こちらも「80」で検索すると分かりやすいでしょう。
 

 
今回は、標準の「80」番ポートに対して「8080」番ポートを指定しています。
 
ポート番号は「0」~「65535」まであり、他のプロトコルで使用していないポート番号であれば何番でもいいのですが、0~1023番までは使われている可能性が高いため、大きく桁数を増やす方が安全です。
そのため、HTTPの標準ポート「80」に対して「80」を重ねる「8080」を使っている方が多いような気がします。
 
詳しくは、下記の Wikiを参照してください。
https://ja.wikipedia.org/wiki/TCP%E3%82%84UDP%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7%E3%81%AE%E4%B8%80%E8%A6%A7
 
 

2.httpd-ssl.confを編集する

 
「httpd.conf」同様に、コントロールパネルの「Config」-「Apache(httpd-ssl.conf)」を選択し、httpd-ssl.confファイルを開きます。
 
ファイル実体は「c:\xampp2\apache\conf\extra\httpd-ssl.conf」です。
 
こちらもバージョンによって違いますが、30~50行目辺りの「Listen 443」を変更します。
「443」で検索をすると探しやすいでしょう。
 

 
今回は、標準の「443」番ポートに対して「44380」番ポートを指定しています。
先に説明したように「443」に「80」を重ねたものになります。
 
 
※XAMPP環境でも SSL接続の https://... でアクセスしたい場合は、VirtualHostの設定なども必要になりますが、いずれ別記事でご紹介します。
 
 

3.XAMPPの Apacheを再起動

 
前項で設定した内容を反映させるため、XAMPPのコントロールパネルから、Apacheを再起動します。(コントロールパネルの「Start」をクリックします。)
 
 
これで XAMPPが起動するようになります。
 
 

他のプログラムが使っている 80番ポート、443番ポートを開放する

 
前項の対応方法は、XAMPPが使うポートを変更する方法でしたが、この対応方法は、80番、443番ポートを XAMPPで使用するために、それらのポートをすでに使っている側のプログラムを違うポートに変更することでバッティングを回避する、という方法です。
 
Windowsに XAMPPをインストールした場合、IIS、Skypeとバッティングしている場合が多いため、その対応の紹介になります。
それ以外のプログラムがバッティングしている場合は、紹介する対応ではバッティングが解消しない場合もあります。
 
 
また、ここで紹介している画面は Windows10です。それ以外の場合は読み替えてください。
 
 

1.バッティングしているプログラムを確認

 
XAMPPの Apacheを起動しようとしたときに表示されるエラー内容を確認します。
 
01_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法 
表示されているエラーが下記の 2つであることを確認します。
 
「Port 80 in use by “Unable to open process” with PID 4!」
「Port 443 in use by “C:\Program Files (x86)\Skype\Phone\Skype.exe” with PID 12084!」
 
これ以外のプログラムがポートを使用している場合は、そのプログラムのポート番号を変更する方法を確認してください。
 
 

80番ポート・IIS(インターネット・インフォメーション・サービス)の停止

 
「Port 80 in use by “Unable to open process” with PID 4!」のエラーの内容は、「『PID 4(プロセスID 4)』が 80番ポートを使用しています。」というものです。
 
「PID 4(プロセスID 4)」をタスクマネージャーで見たものが下記になります。
 
03_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
詳細は割愛しますが、Windowsのシステムが 80番ポートを使用しています、ということで、Windows自体がサーバ機能を持っていることを示しています。
 
これは、Windowsに標準で実装されている Webサーバの IIS(Microsoft Internet Information Services)が稼働していて、80番ポートを使用していることを示しています。
 
ということで、80番ポートを開放するには、IISを停止します。
 
 

インターネットインフォメーションサービスの停止の手順

 
画面右下にある「スタートメニューボタン」を右クリックし、「コントロールパネル」を表示し、コントロールパネルの中の「プログラムと機能」を選択します。
 
04_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
表示される「プログラムと機能」のウインドウの左側にあるメニューの「Windowsの機能の有効化または無効化」を選択します。
 
05_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
表示される「Windowsの機能」のウインドウから「インターネットインフォメーションサービス」を探して、「■」をクリックしてチェックを外します。
下記の確認メッセージが表示されますが「はい」をクリックして続行します。
 
06_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
07_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
これでバッティングしていた 80番ポートは解放されました。
 
 

443番ポート・Skypeのポート番号変更

 
「Port 443 in use by “C:\Program Files (x86)\Skype\Phone\Skype.exe” with PID 12084!」のエラー内容は、「『Skype.exe』が 443番ポートを使用しています。」というものです。
 
そのため、443番ポートを使用している Skypeの設定を変更します。
 
 

Skypeの 443番ポートの変更

 
Skypeのメニューから「ツール」-「設定」を選択し、Skypeの設定画面を表示させます。 
 
表示された設定画面の左メニューの「詳細」「接続」をクリックし「Skypeのインターネット接続設定」画面を表示します。
 
08_XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
 
「追加の受信接続にポート 80と 443を使用」に入っているチェックを外して「保存」をクリックすることで設定が完了します。
 
Skypeの再起動が必要な場合もありますが、これでバッティングしていた 443番ポートも解放されました。
 
 
これで XAMPPが起動するようになります。
 
 

アンインストールした XAMPPの Apacheが残っている場合もある

 
XAMPPが起動しない場合の原因は、ここまで説明した内容がほとんどなのですが、XAMPPのバージョンアップをする場合や、インストール失敗などの理由で、XAMPPをアンインストールしたのち、再インストールした場合などは、XAMPPの Apacheのプロセスが残っていることが原因で XAMPPが起動しない場合があります。
 
その残った Apacheのプロセスが原因で 80番ポートが使えなくなっている場合もありますので、XAMPPをアンインストールした場合などは、PCを一度再起動すると起動できるようになる場合もあります。
 
 

XAMPPの関連記事

XAMPP本体や PHPのバージョンアップをせずにもう一つXAMPPをインストールして複数の環境を共存させる方法
XAMPPとは?パソコンにローカル LAMP環境を簡単に設置する方法を詳細解説
XAMPPにVirtualHostを設定しドメイン、ドキュメントルートを設置する方法
XAMPPのApacheが起動しない!ポート番号の変更でバッティングの解消方法
MySQLのタイムゾーン(mysql_tzinfo_to_sql)の設定方法・XAMPP環境の解説も
XAMPPのWordPressの更新でFatal error: Maximum execution time of 30 seconds exceededのエラーが発生して失敗する場合の対処方法
XAMPP環境で WP-DBMANAGERでの復元でDBが壊れる
XAMPPの Apacheが起動しなくなった場合の対処方法
XAMPP環境(ローカル環境)の sendmailからPHPメールを送信する設定方法
PHPを勉強するための環境を構築するにはXAMPPが最適
 
その他の「xampp」に関する記事一覧
 
 

 - システム開発関連技術

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

RSA暗号の仕組みがすっきりと分かった瞬間

RSA暗号の仕組みがすっきりと分かったその説明を交えながら、RSA暗号の解説をします。

XAMPP環境(ローカル環境)の sendmailからPHPメールを送信する設定方法

メールサーバが設定されていない、ローカルの XAMPP環境からメールを送信する方法の解説です。

WindowsXPから Windows7にアップグレードして分かったこと

WindowsXPから 7にアップグレードする際に不安だったバックアップ、ドライバ、32Bit版 64Bit版について書いています。

XAMPP本体や PHPのバージョンアップをせずにもう一つXAMPPをインストールして複数の環境を共存させる方法
XAMPP本体や PHPのバージョンアップをせずにもう一つXAMPPをインストールして複数の環境を共存させる方法

パソコンに簡単に LAMP環境を構築することができるパッケージソフト「XAMPP」。XAMPPのバージョンアップや、PHPのバージョンに合わせて複数の環境を構築する場合の手順を解説。

PHPを勉強するための環境を構築するにはXAMPPが最適

PHPを勉強する環境としてローカル環境を構築するには XAMPPが最適。その解説です。

XAMPPの Apacheが起動しなくなった場合の対処方法

ローカルのXAMPP環境で Apacheが起動しなくなる原因の多くはポートのダブり。その対処方法です。

IEのHTMLソースを秀丸表示で共有メモリへのアクセスが拒否されましたで開けない問題への対処方法

Windows7の IEで HTMLソースを秀丸で表示する際に「共有メモリへのアクセスが拒否されました」のエラーが表示される原因と解決方法の説明。

Windows 10パソコンで日付、時間がずれる!原因と時計を合わせる解決方法
Windows 10パソコンで日付、時間がずれる!原因と時計を合わせる解決方法

Windows 10のパソコンでスリープから復帰すると日付がズレる不具合が発生。その時の対応方法の時計の設定やマザーボードの電池の交換の方法を紹介。プラスαの不具合の原因と対応方法を紹介。

XAMPPとは?パソコンにローカル LAMP環境を簡単に設置する方法を詳細解説
XAMPPとは?パソコンにローカル LAMP環境を簡単に設置する方法を詳細解説

パソコンに LAMP環境を簡単に構築することができるパッケージ「XAMPP」。そのインストール方法を詳細解説。インストール後の不具合やカスタマイズ方法についても説明。

XAMPPにVirtualHostを設定しドキュメントルートを設置する方法
XAMPPにVirtualHostを設定しドメイン、ドキュメントルートを設置する方法

XAMPPにVirtualHostを設定し、DocumentRootを設置する方法を2つ紹介。ポートを指定してアクセスする方法とhostsを設定してドメインでアクセスする方法。エラーの解消方法も解説。