ポート80が何に使われているのかが分かりません

このQ&Aのポイント
  • Apacheを起動しようとしたところ「make_sock: could not bind to address 0.0.0.0:80」というエラーが出ました。
  • ポート80が他のアプリケーションで使われているために起こる問題で、特定の手順を経てポート80を使っているアプリケーションを特定することができます。
  • netstat -oanコマンドを使ってポート80のPIDを確認し、タスクマネージャーを使用してPIDを使っているアプリケーションを特定することができます。しかし、PIDが表示されない場合もあります。
回答を見る
  • ベストアンサー

ポート80が何に使われているのかが分かりません

Apacheを起動しようとしたところ「make_sock: could not bind to address 0.0.0.0:80」というエラーが出ました。ネットの記事を調べてみると、ポート80が他のアプリケーションで使われているために起こる問題で、以下の手順でポート80を使っているアプリケーションを特定し止めることができると書いてありました。 (1)コマンドプロンプトでnetstat -oanを実行 (2)0.0.0.0:80 を使用している [PID] を確認 (3)タスクマネージャ>プロセス を開き、表示>列の選択 で、「PID(プロセル ID)(P)」をチェックして表示。 (4)ステップ(2)で確認したPIDを使用しているアプリケーションを特定。 netstat-oanで調べたところポート80のPIDは1792(状態はLISTENING)でした。 しかしながらタスクマネージャーのプロセスにあるPID列にはこの1792が表示されませんでした。 なぜタスクマネージャーのプロセスに表示されないのでしょうか この場合、PID1792が何のアプリケーションなのかを知るにはどうしたらよいのでしょうか 教えてくださいますようお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • bardfish
  • ベストアンサー率28% (5029/17765)
回答No.4

Apacheのconfigでポートを変更できたはずです。 80がすでに使用されていて変更したくない、あるいはできないならApacheの方を8080などに変更しましょう。 80は普通HTTP。 「netstat -b」は(Windowsの場合)管理者権限が必要なので、スタートメニューからコマンドプロンプトを実行する場合は右クリックで「管理者として実行」しましょう、 ポートをどのアプリケーションが使用しているかを調べるには「netstat -b」のほうが簡単かと・・・ それにタスクプロセスを詳しく調べたければWindows標準のタスクマネージャではなくProcess Explorerなどを使用しましょう。 ちなみに、サーバーとなるアプリを何もインストールしていないWindows7だと80番ポートは使用されていません。

2011tkxp
質問者

お礼

「管理者として実行」というやり方があることを初めて知りました。 丁寧なご回答ありがとうございます

その他の回答 (3)

  • pringlez
  • ベストアンサー率36% (598/1630)
回答No.3

# なぜタスクマネージャーのプロセスに表示されないのでしょうか 権限の問題という可能性もあります。タスクマネージャーは基本的にユーザーが起動したプロセスのみを表示します。そのため、上位権限で自動起動されたものが表示されていないだけという可能性もあります。 現在ログインしているユーザの権限が弱いということはありませんか?もしそうなら上位権限のユーザで起動してみると表示されるようになると思います。

2011tkxp
質問者

お礼

なるほど、タスクマネージャーでは権限によって表示されないものもあるのですね。 ありがとうございます

  • ariseru
  • ベストアンサー率56% (930/1659)
回答No.2

コマンドプロンプトで「netstat -b」を実行すれば使用中のポート番号と、ポートを使っているアプリケーションの実行ファイル名が表示されます。 あとは、表示された実行ファイルの名称からアプリ名を判断して、分からなければググレばOK。 他の人の例ですと、Skypeが80番ポートを使っていたなんて場合もあるみたいですよ。

2011tkxp
質問者

お礼

ありがとうございます netstat -bという手段は初めて知りました

  • foitec
  • ベストアンサー率43% (1079/2453)
回答No.1

OSが何か不明ですが・・・・ タスクマネージャのプロセス一覧で、「全ユーザーのプロセスを表示する」にチェックを入れましたか? 或いは「サービス」タブの方でPIDを確認できます。

2011tkxp
質問者

お礼

情報が不足してすみません Windows7 HomePremiumでした 分かりにくい質問だったにも関わらずお答えいただきありがとうございます

関連するQ&A

  • SQLServer2008 がTCPポート1433を使えない

    OS:Windows Server 2008 でSQLServer2008をインストールし、当初は通常通り起動していたのですが、 1週間後、再度起動するとsqlserverのサービスが起動できなくなってしまいました。 ポートTCP1433が使えませんと表示され、 netstatでTCP1433を使用している(リスニング)PIDを調べて、タスクマネージャで確認すると、 wininit.exe というプロセスが使用しています。 一般にTCP1433はSQLServer用ですので、上記のプロセスが利用しているのは異常と思うのですが、この状況についてご存じの方、教えてください。

  • ポート80の問題

    ポート80を使用するソフトを使おうとすると、既に使われているということでエラーが出ます。 (ソフト名はマイナーなので知っている人がいたとしても所持してる人は極稀と思うので伏せておきます) とりあえず調べてみると、 cmd.exeからnetstat -aon|findstr "80"と入力。 TCP     0.0.0.0:80     0.0.0.0:0     LISTENING     4 この様に出ますので、タスクマネージャーの詳細タブを見ますと、 名前     PID   状態   ユーザー名  CPU  メモリ  説明 System    4   実行中  SYSTEM    00    92k  NT Kernel & System と、SystemがPID値4ということで、ポート80を使用しているのはSystemということがわかりました。 しかしSystemを終了するわけにはいきません。(強引にやっても無効とエラーが出ます) 何か別のプロセスがSystemをポート80で使用させているんだと想像するのですが、何がポート80を使用させているのか突き止める方法を教えて頂けないでしょうか。

  • 正体不明のプロセスの探り方

    Win10です。現在どのプロセスがどのポートを使っているのか見たくてコマンド画面で"netstat -ano"を実行しました。するとプロセス番号PID 11324(TCP、Established)というのがあって、これがタスクマネージャ見ても出てきません。 このプロセスが何なのか、ほかに調べる方法ありませんでしょうか。

  • ポートをリスニングさせているプロセスからプログラムのフルパスを割り出す

    netstat と tasklistで確認したところ、 alg.exe が TCP 1025、 svchost.exe が TCP 2869 をリスニングさせているのですが、これらは一般的なことでしょうか? また、ポートをリスニングさせているプロセスからプログラムのフルパスを割り出すことは可能でしょうか? Windows XP Pro SP2を使用しています。どうぞよろしくお願いいたします。

  • Windows2000 Serverでポートを使用しているアプリケーションを調べる方法

    Windows2000 Serverで、netstat で表示される使用ポート一覧のうち、何のアプリケーションがどのポートを使っているかを確認する方法を探しています。 WindowsXPであれば、netstat -o オプションで可能ですが、あいにく2000には実装されていないようです。 可能であればコマンドベースで確認したいのですが、(あまり余計なアプリケーションは入れたくないので)このアプリを使えばできるといった内容でも構いません。 よろしくお願いいたします。

  • Windows2000 Serverでポートを使用しているアプリケーションを調べる方法

    Windows2000 Serverで、netstat で表示される使用ポート一覧のうち、何のアプリケーションがどのポートを使っているかを確認する方法を探しています。 WindowsXPであれば、netstat -o オプションで可能ですが、あいにく2000には実装されていないようです。 可能であればコマンドベースで確認したいのですが、(あまり余計なアプリケーションは入れたくないので)このアプリを使えばできるといった内容でも構いません。 よろしくお願いいたします。 過去に同様の質問があったのですが、リンク切れで回答が確認できませんでした。 大変困っておりよろしくお願いします。 http://oshiete1.goo.ne.jp/qa1390923.html

  • 空いているポートの確認について

    Windows Server2016で空いているポートを確認する方法等についての以下の質問についてご回答をお願いいたします。 (1)空いているポートの確認方法(コマンドプロンプトでnetstat -aでしょうか、他の調査方法もあればご教授ください) (2)Windowsファイアウォールの受診規則で例えば、何らかのアプリケーションのポートの5985、5986を許可していた場合、netstat -aで5985しか出てこないのはなぜでしょうか?netstat -aが空いているポートを全て出すのであれば、5985と5986の両方が出るのではないのでしょうか?

  • ポートについて

    現在使用しているサーバで空いているTCPポートを調べたところ(netstat -a)、いくつかのポートが表示されてきましたが、これらが一体何のために空いているのかを調べる方法はあるのでしょうか。 80や21のような一般的なものはいいとして、それ以外の見たことの無いようなポートをどうしたら良いか困っています。セキュリティの為にもそれぞれの意味合いを確認しておきたいのですが・・・ OSはWindowsNTServer4.0です

  • 「XAMPP1.71」apacheが起動しない

    「XAMPP1.71」apache起動不具合について教えてください。 ▼インストール直後 apacheは正常に開始でき、Admin画面も確認出来た。 ▼xampp-control.exeからapache停止ボタンを一度でもクリックすると その後、apacheが二度と起動しなくなります。(起動せずAdminボタンを押せない状態) ※何度かXAMPP自体の再インストールを試みたのですが、ほぼ同じ症状でした。 環境等 ・WindowsXP ・XAMPP1.71 ■下記サイトを参考にしているのですが、うまくいきません。 XAMPPでApachが起動しない場合のわりと汎用的な調査・解決方法まとめ http://www.vippers.net/blog/2009/04/xamppapach.html □1)Apachの強制起動 ・/xampp/apache_start.batを実行すると、下記エラーとなります。 (OS 10048)通常、各ソケット アドレスに対してプロトコル、ネットワーク アドレス、またはポートのどれか 1 つのみを使用できます。 : make_sock: could not bind to address 0.0.0.0:80 □2)ポート80を使っているプロセスの特定 ・netstat -oan TCP 0.0.0.0:80 0.0.0.0:0  LISTENING 5172 □3)ポート80を使っているプロセスからアプリケーション名の特定 httpd.exe □4)ポート80を使用しているアプリケーションの停止 サービス画面より、下記アプリケーションがあやしいと思っているのですが、これを停止すればよいのでしょうか? また、停止するには、どうすればよいのでしょうか? Apache2.2の実行パス、"C:\dev\xampp\apache\bin\httpd.exe" -k runservice

    • ベストアンサー
    • PHP
  • apacheのポートが使用されている?

    httpd startのコマンドを打って : (99)Cannot assign requested address: make_sock: could not bind to address 192.168.100.146:80 no listening sockets available, shutting down Unable to open logs この様なエラーが出てしまいました。80番のポートが使用されているらしいです。 それで "lsof -i:80"を打ったところ [root@kishimoto conf]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME firefox-b 3025 root 37u IPv4 23932 TCP 192.168.100.163:39713->64.233.189.104:http (CLOSE_WAIT) と出ました。"firefox-b"が80番のポートを使用しているみたいです。   ここで質問なのですが、"firefox-b"を移動させるにはどうしたらよろしいですか?それかapacheを別のポートに移動させる方法も可能なのですか? 以上です、ご協力よろしくお願いします。