Windows上のApacheのポートの問題を解決する

別のプロセスが既にポート80を使用しているため、Apacheを起動できないという問題に繰り返し遭遇しました。 実際、ロシア語、そして英語を話すインターネットの広大な地域で長く苦痛を伴うサーフィンをした後、この問題の原因を取り除くためのあらゆる方法を集めました。 これらはそれらを解決する理由と方法であり、ここにリストしたいと思います。



(OS 10048) Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:80

no listening sockets available, shutting down











この問題が発生する最も単純で最も一般的な理由は、Skypeです。



最初のステップは、Skypeの設定を確認することです。 [ツール]、[設定]、[詳細設定]、[接続]の順に移動し、 [ ポート80と443を着信代替として使用する]のチェックを外します 。 設定を有効にするために、Skypeを保存して再起動します。 不明な理由で保存されなかったため、この設定を再確認することをお勧めします。



これで解決しない場合は、ポートが使用しているプロセスの種類を探す必要があります。



コンソールを開きますメインメニュー->実行-> cmdと入力してEnterを押します。



コンソールで、次のコマンドを入力します



netstat -aon | findstr 0.0:80







コマンドの左側はすべてのポートの現在の状態を返し、右側は必要な80ポートを見つけます。

結果を見て、最後のPID列を探します。 覚えておいてください。 これは、必要なプロセスの識別子です。



これがPIDが4以外のプロセスである場合、次の手順を実行します。



タスクマネージャに移動して、必要なプロセスを探します。 デフォルトでは、PIDは出力されません。 これを行うには、 列の表示/選択に進み、 「プロセスID(PID)」を確認します。 保存すると、プロセス名の横に「プロセスID」列が表示されます。

必要な識別子を持つプロセスを探しています。 そこで、このプロセスを好きなように実行します。単に削除したり、スタートアップから削除したり、アプリケーション全体を削除したりできます。



PIDが4の場合、これはポート80がシステム(システムプロセス)によって使用されることを意味し、タスクマネージャーでシステムプロセスの名前が表示されます。



プロセス名見つけるためのより速い方法が 074909によって提案されました。



コンソールで、次のコマンドを入力します。

for /f "tokens=1,2,3,4,5*" %i in ('netstat -aon ^| findstr ":80" ^| findstr /i listening') do echo %j %l & @tasklist | findst

r %m







必要なプロセスの名前を返します。



いくつかの解決策がありますが、どれがあなたに合っているかは神のみが知っています。

最初のもの。

これらはいくつかのサービスのトリックです:





実際には、これらのサービスを無効にする必要があります。



  1. 「マイコンピュータ」のRMB
  2. 運営管理
  3. サービスとアプリケーション
  4. サービス
  5. 必要なサービスを見つけて停止します。




それでも解決しない場合は、=)に戻し、次のパントに進むことができます。 自宅でこれらのサービスが見つからなかった場合も、同じことを行う必要があります(win7でWinRMしか見つかりませんでした)。



二番目。

「http.sys」のトリック

それから私はお互いにそれほど変わらない2つの方法を見つけました。それは私を助けた2番目の方法でしたが、コメントから判断すると、1番目の方法も少数の人々を助けませんでした。

彼らは同じように始まります。



1)レジストリにアクセスします。 実行-> regedit

2) HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTPブランチへ

そして、これらの方法の違い:

3)「NoRun」という名前のタイプDwordのパラメーターを作成し、引用符なしで値「1」を割​​り当てます。

または

3)「開始」パラメーターを探し、値を自然に引用符なしで「0」に変更します。

4)コンピューターを再起動します。



人生を楽しむ=)



材料:

http://www.mydigitallife.info/how-to-check-and-identify-which-application-is-listening-or-opening-port-80-and-443-on-windows/

http://superuser.com/questions/43307/whys-is-system-process-listening-on-port-80

http://stackoverflow.com/questions/1430141/port-80-is-being-used-by-system-pid-4-what-is-that

http://serverfault.com/questions/65717/port-80-is-being-used-by-system-pid-4-what-is-that

http://www.cameroncooke.com/2009/01/25/windows-7-uses-port-80-and-makes-it-impossible-to-install-apache-solution/



All Articles