私は自分のコンピュータにZend Server CEをインストールしようとしていましたが、私のWebサーバ用のポートを選択する必要があるときは、 "Web Server Port:80 Occupied"と表示されます。だから私は入力してCMDでポート80を使用しているかを確認することにしました: "netstat -o -n -a | findstr 0.0:80":
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
タスクマネージャのプロセスとサービスでPID:4をチェックします。 PID 4は "System"のようです。
それで、私が知りたいのは、どのようにして "System"(PID:4)がポート80を使用するのをやめることができるのですか?
情報:私は使っています:Windows 7 64bit; Zend Server CE 5.5.0
さて、しばらくウェブを検索した後、私は自分の問題に対する解決策を見つけました。
問題を診断して解決するには、次の手順に従ってください。
ポート80をリッスンしているPIDを取得します。netstat -nao | find ":80"
タスクマネージャを開き、[プロセス]タブに移動し、Menu/View/Select Columns…
の「PID」を確認し、最後の手順で見つけたPIDを使用してプロセスを探します。
それが通常のアプリケーションまたはIISの場合は、無効にするかアンインストールします。 Skypeなどの一部のプログラムでは、ポート80の使用を無効にすることができます。
それがシステムプロセス - PID 4の場合 - Windows Remoteなどの他のサービスによってオンデマンドで開始されるHTTP.sysドライバを無効にする必要があります。 Windows 7または2008上の管理または印刷スプーラ。
無効にする方法は2つありますが、最初の方法が安全です。
1。
デバイスマネージャに行き、メニュー/ビューから「隠しデバイスを表示」を選択し、「プラグアンドプレイでないドライバ」/ HTTPに行き、ダブルクリックして無効にします(または手動に設定します、一部のサービスは依存します)。
再起動してnetstat -nao | find ":80"
を使用し、80がまだ使用されているかどうかを確認します。
2。
RegEditを起動します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
に行く
"start"の値を4に変更します。これは無効になることを意味します。
コンピュータを再起動してください。
私の解決策はステップ4でした。
私はちょうどWindows 8 Pro - Build 9200をインストールした後にこの問題を抱えていました。これは、しかし、それを修正しました。
HTTP.SYSのバインドIPアドレスを変更する必要があります
netsh http add iplisten ipaddress=::
http://www.mikeplate.com/2011/11/06/stop-http-sys-from-listening-on-port-80-in-windows/
私の場合はWebMatrixでした。ここで可能な解決策(こちらも含む)をご覧ください。 http://www.sitepoint.com/unblock-port-80-on-windows-run-Apache/
基本的に:
[管理ツール]から[サービス]を開き、[Web配置エージェントサービス]を見つけます。サービスを停止して、スタートアップの種類を[手動]に設定します。
Web配置エージェントサービスはWebMatrixと共に配置され、私の苦痛の原因でした。 MicrosoftのWeb Platform Installerを使用してインストールされた他のアプリケーションと一緒に配布されることもあります。
PID 4は、システムカーネルの一部である「システム」プロセスとしてハードコードされています。
ポートがシステムによって占有されている場合は、おそらくIISが有効になっています。 https://stackoverflow.com/questions/1430141/port-80-is-being-used-by-system-pid-4-what-is-that を参照してください。
コマンドnetsh http add iplisten ipaddress=::
を使用している間、確かに、Apacheが私のWindows 10 64ビットシステム上で起動することを可能にしました、それは::
の代わりに127.0.0.1
にバインドされていたので - 私のhostsファイルに適切なエントリがあっても。私がやってしまったのは、代わりにこのコマンドを使うことでした。netsh http add iplisten ipaddress=0.0.0.0
これはうまくいっただけでなく、ブラウザからlocalhostへのアクセスも許可しました。私にとってこれは優れた解決策でした。
[サービス]リストを開く[World Wide Web発行サービス]を見つけて停止し、[手動]に設定します。