[Apache][Windows7] No listening sockets available エラーで起動できないときの解決方法

Windows7 に Apache をインストールして、起動してみると”No listening sockets available”というエラーで起動できないときの解決方法をご紹介します。

イベントビューアーでシステムイベントログを確認してみると下記のようなメッセージが出ていました。

The Apache service named reported the following error:
>>> (OS 10048)通常、各ソケット アドレスに対してプロトコル、ネットワーク アドレス、またはポートのどれか 1 つのみを使用できます。 : make_sock: could not bind to address 0.0.0.0:80

Apacheが、” No listening sockets available”というエラーをはいて起動しない場合。 Apacheが使う80番ポートをほかのサービスが使用していることが原因でした。

Windows上での解消手順は続きの通りです。

使用ポートの調べ方

コマンドプロンプトで

netstat -oan

として、80番ポートを使用しているサービスの、プロセスIDを調べる
同じくコマンドプロンプトで

tasklist /svc

として、サービスとプロセスIDとの対応を調べる
対応するサービスを終了、または設定変更して80番ポート以外を使うようにする

とりあえずこれでOKです。

次に、Skypeの使用ポート変更します。

今回80番ポートを使っていたのはSkypeでした。

Skypeが使えないのも困るので、Skypeが使用するポートを変更します。

メニューの「ツール」→「詳細」→「接続」
上から2番目の「上記のポートに代わり、ポート80を使用」のチェックを外す
Skypeを再起動する

C:Usersyour_username>netstat -oan
 
アクティブな接続
 
  プロトコル  ローカル アドレス          外部アドレス        状態           PID
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       3956
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       804
  TCP    0.0.0.0:443            0.0.0.0:0              LISTENING       3956
・
・
・
C:Usersyour_username>tasklist /svc
 
イメージ名                     PID サービス
========================= ======== ============================================
System Idle Process              0 N/A
System                           4 N/A
・
・
・
Skype.exe                     3956 N/A

参考情報

Apacheが起動しない場合 – Hextomino