Port 80 sedang digunakan oleh SYSTEM (PID 4), apa itu?

345

Saya mencoba menggunakan port 80 untuk server aplikasi saya, tetapi ketika saya melakukan netstat -aonsaya mendapatkan:

TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4

Ketika saya mencari proses di task manager, itu menunjukkan PID 4adalah SYSTEM, itu saja. Tidak ada ekstensi ... tidak ada. Hanya " SYSTEM". Apa yang terjadi di sini?

Saya takut untuk mengakhiri proses ini, apa yang harus saya lakukan?


PEMBARUAN :

Saya telah memecahkan ini melalui pertanyaan Stack Overflow lainnya , yang memiliki solusi untuk membuat IIS berhenti mendengarkan pada port 80 untuk alamat IP tertentu.

HAH
sumber
1
Untuk pembaca masa depan, sebaiknya membaca serverfault.com/questions/65717/… untuk memahami mengapa beberapa jawaban yang diposting di bawah ini berfungsi (tetapi tidak ada jawaban yang masuk ke tingkat rincian).
Lex Li

Jawaban:

37

alamat IP adalah 0.0.0.0, status = MENDENGARKAN: berarti port 80 mendengarkan semua antarmuka (tidak digunakan)

Cara membaca hasil NETSTAT -AN:

manji
sumber
61
"Berarti port 80 mendengarkan semua antarmuka (tidak digunakan)" tidak persis - layanan "World Wide Web Publishing Service" mendengarkan di port ini. Setelah Anda menghentikannya secara manual, Anda dapat membebaskan port itu (setidaknya di windows 7)
despot
33
Untuk memperjelas, Layanan Penerbitan World Wide Web adalah W3SVC. Hentikan layanan ini menyelesaikan masalah saya.
daniel__
20
Menghentikan dan menonaktifkan layanan W3SVC juga berfungsi untuk saya: sc stop w3svckemudiansc config w3svc start= disabled
dugloon
1
Tautan ini ( devside.net/wamp-server/… ) membantu saya mempersempit penyebabnya dan akhirnya menemukan apa yang saya cari. Mengganggu posting stackoverflow ini tidak muncul dalam pencarian saya sampai saya menyelesaikannya.
DangerPaws
3
MENDENGAR berarti digunakan. Itu berarti ada proses menggunakan port spesifik itu, menunggu panggilan masuk. Saya mencoba untuk memulai Situs Web Default dan IIS mengatakan kepada saya ada proses lain menggunakan port 80. Jawaban yang paling banyak dipilih - yang tentang "Web Deployment Agent Service" (MsDepSvc) - adalah penjelasan yang lebih baik untuk apa yang terjadi.
Mircea Ion
285

Layanan baru yang disebut "Web Deployment Agent Service" (MsDepSvc) juga dapat memicu "Sistem" dengan PID = 4 untuk mendengarkan pada port 80.

Antony
sumber
4
Saya memiliki masalah yang sama persis seperti poster aslinya. Jawaban Antony memecahkan masalah saya karena saya tidak menjalankan layanan pelaporan. Saya baru saja menginstal WebMatrix jadi mungkin "Layanan Agen Penyebaran Web" diinstal sebagai bagian dari paket itu. Bagaimanapun, menghentikan layanan itu membebaskan port 80. Untuk mengambil port 80 seperti itu tampaknya kurang ajar, bagi saya.
voam
7
WebMatrix tampaknya menjadi masalah di sini
Jonathan
5
Ya, saya dapat mengonfirmasi dengan Jonathan bahwa setelah menginstal WebMatrix (dan dependensinya melalui Microsoft Web Platform Installer), layanan "Layanan Agen Penyebaran Web" muncul. Memang bukan desain yang sangat ramah untuk menggunakan port 80, terutama jika Anda juga menjalankan server Apache / IIS pada kotak yang sama.
Antony
Untuk menghentikan sementara MsDepSvc, buka Jalankan -> "Services.msc", klik kanan pada Layanan Agen Penyebaran Web, klik Stop.
timofey.com
Anda dapat mengubah URL untuk MsDepSvc (Layanan Agen Penyebaran Web) di sini: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ MsDepSvc \ Parameter
Grynn
251

Ada banyak layanan, yang dapat mendengarkan port 80 di windows.

Untungnya Anda dapat mendeteksi dan menghentikan mereka semua yang menjalankan perintah konsol sederhana:

NET stop HTTP

Ketika Anda memulainya, Anda akan mendapatkan daftar terlebih dahulu: masukkan deskripsi gambar di sini

Untuk menghindari masalah ini di masa mendatang, buka Layanan Lokal dan nonaktifkan layanan yang terdaftar .

NB - Beberapa layanan akan segera restart sendiri, cukup jalankan 'NET stop HTTP' beberapa kali .

Anton Purin
sumber
3
CATATAN ... jalankan cmd sebagai administrator
boi_echos
3
Ini akan menghentikan layanan pengumpul informasi juga yang bertanggung jawab untuk printer.
Rahman
7
Saya melewatkan fakta halus bahwa Anda dihadapkan dengan daftar layanan yang berjalan terlebih dahulu dan pilihan untuk melanjutkan penghentian layanan mereka. Ini memungkinkan saya untuk melihat apa yang sedang berjalan, memilih untuk tidak menghentikan semuanya, dan kemudian menemukan layanan yang dicurigai di panel Layanan saya, menghentikannya, dan mengaturnya menjadi manual. Solusi anton sangat bagus. Mudah diingat dan digunakan.
Perry Tew
1
@barlop ini cara yang sangat aneh untuk bereaksi pada orang yang mencoba membantu Anda
Anton Purin
2
Perintah yang lebih baik untuk menemukan pelakunya: netsh http show urlacldan netsh http show servicestate(cari semua pelakunya dengan: 80 di dalamnya.) Sumber: devside.net/wamp-server/…
Ayub
241

Juga, coba hentikan "SQL Server Reporting Services (MSSQLSERVER)", yang tampaknya default ke 80. Saya melakukan itu dan port 80 dibebaskan. PID mengidentifikasi pelakunya sebagai "Sistem", tetapi ternyata Sistem itu dapat berarti banyak hal.

infocyde
sumber
5
Layanan Pelaporan SQL Server mendengarkan pada port 80 pada sistem saya juga. Terima kasih!
afournier
2
Saya mulai melihat port 80 ini setelah menginstal server MSSql dan tidak menyadarinya sampai saya melihat solusi Anda. Setelah menghentikan layanan semuanya baik-baik saja sekarang. Terima kasih.
Damodar Bashyal
4
Ubah "URL Layanan Web" DAN "URL Portal Web" di "Manajer Konfigurasi Layanan Pelaporan" untuk, katakanlah, port 82 :-)
François Breton
87

Saya memiliki masalah yang sama. Dapat memperbaikinya dengan menghentikan Layanan Penerbitan World Wide Web di bawah layanan yang sedang berjalan.

Jules Colle
sumber
karya hebat dengan menghentikan agen layanan penyebaran web di layanan pada windows 7 profesional.
user606669
Ini berfungsi tetapi juga menghentikan kemampuan saya untuk meng-host situs di port lain melalui IIS.
cchamberlain
Ini tidak berfungsi untuk saya di Windows Server 2012 R2. Layanan ini tampaknya tidak ada sehingga saya tidak dapat mengakhiri proses.
Martin Erlic
30

Kedengarannya seperti IIS sedang mendengarkan port 80 untuk permintaan HTTP.

Coba hentikan IIS dengan masuk ke Control Panel / Administrative Tools / Layanan Informasi Internet, klik kanan pada Situs Web Default, dan klik pada opsi Stop di menu popup, dan lihat apakah pendengar pada port 80 telah dihapus.

Robert Harvey
sumber
Itu ada di sistem saya, IIS, tetapi nama layanannya adalah "WWW-Publishingdienst" (bahasa Jerman?)
Olivier Faucheux
28

Ini bekerja untuk saya:

  1. Klik kanan pada My Computer .
  2. Pilih Kelola .
  3. Klik dua kali Layanan dan Aplikasi .
  4. Kemudian klik dua kali Layanan .
  5. Klik kanan pada " Layanan Penerbitan Web Wide Web ".
  6. Pilih Berhenti .
Eng.Fouad
sumber
1
Untuk langkah 5, masalah saya adalah dengan Layanan Pelaporan SQL Server. Saya mematikannya dan masalahnya teratasi. Saya telah mematikan layanan WWW sebelumnya tetapi itu tidak menyelesaikan masalah.
Auguste
ReportServer $ SQLEXPRESSS2016 melakukan ini di pc saya.
Liam Mitchell
25

Saya telah menemukan bahwa "SQL Server Reporting Services (MSSQLSERVER)" dimulai secara otomatis dan mendengarkan pada port 80.

Saya harap ini membantu.

HAI

Omeriko
sumber
23

SOLUSI KERJA DIUJI: (WINDOWS 10)

Ada banyak alasan untuk ini, satu-satunya penyebab / solusi yang saya rekomendasikan adalah ini:

BUKA PERINTAH WINDOW ANDA DENGAN PREVILEGE ADMINISTRATOR KEMUDIAN:

net stop http /y

di atas akan setuju untuk menghentikan layanan http:

sc config http start= disabled

di atas akan mengkonfigurasi layanan untuk menonaktifkan secara default

JIKA SOLUSI DI ATAS TIDAK BEKERJA TEMUKAN KASUS KHUSUS ANDA DI SINI:

SUMBER: http://www.devside.net/wamp-server/opening-up-port-80-for-apache-to-use-on-windows

KEMBALIKAN SERVER WEB ANDA / XAMPP / APACHE AND DONE.


Jika Anda perlu mengaktifkan kembali default di sini adalah perintah sc config HTTP start= demand, sumber penjelasannya di sini http://servicedefaults.com/10/http/

Kotoran
sumber
15

Layanan lain yang bisa ditempati port 80 adalah BranchCache

services.msc menampilkannya sebagai "BranchCache"

atau gunakan perintah net untuk menghentikan layanan seperti

berhenti bersih PeerDistSvc

Memperbarui:

PeerDistSvc adalah layanan di balik svhost.exe, untuk melihat jenis layanan svchost

tasklist / svc / fi "imagename eq svchost.exe"

seizu
sumber
ini bekerja untuk saya juga - deskripsi layanan mengatakan: BranchCache - Layanan ini cache konten jaringan dari rekan-rekan di subnet lokal.
xorcus
Artikel ini menyelesaikan masalah saya dengan BranchCache
Amit Beckenstein
8

Saya tahu jawaban ini benar, tetapi layanan saya .msc tidak menunjukkan layanan, namun ini berhasil:

sc stop "MsDepSvc" 
sc config "MsDepSvc" start= disabled 
isJustMe
sumber
5

Ini dapat dengan mudah diperbaiki dengan mengikuti lima langkah ini:

  1. Layanan terbuka
  2. Klik kanan pada Layanan Penerbitan World Wide Web
  3. Klik STOP

Untuk mencegah masalah ini di masa mendatang:

  1. Pergi ke Properties
  2. Ubah jenis Startup ke Manual

Viola kamu baik untuk pergi!

Arun Joshla
sumber
1
Apa yang saya butuhkan. Terima kasih.
Dang Cong Duong
4

Saya baru saja mendapat masalah ini hari ini, karena muncul setelah Norton meminta reboot, saya menyalahkan Norton.
Tapi itu bukan Norton, saya menghapus Norton, reboot -> masalah masih ada.

netstat -nao menunjukkan bahwa PID 4 memiliki koneksi port 80 saya.

Saya kemudian pergi ke panel kontrol, lalu "Hidupkan atau matikan fitur Windows" kemudian tidak dicentang Layanan Informasi Internet.
Reboot, masalahnya hilang.
Server xampp saya berjalan ok sekarang.

Saya tidak pernah ingat menyalakan IIS sejak awal. Saya telah menjalankan berbulan-bulan sebelum ini terjadi. Saya masih tidak tahu apa yang menyebabkannya. Mungkin windows sebelumnya yang diperbarui mengaktifkan iis dan reboot saya menyalakannya, saya tidak tahu.

Godzilla
sumber
4

Proses ini bekerja untuk saya:

  1. Klik kanan pada My Computer.
  2. Pilih Kelola.
  3. Klik dua kali Layanan dan Aplikasi.
  4. Kemudian klik dua kali Layanan.
  5. Klik kanan pada "Layanan Penerbitan Web Wide Web".
  6. Pilih Berhenti
  7. Mulai ulang XAMPP
Manideep
sumber
3

Saya punya masalah yang sama persis, kecuali bahwa saya belum pernah menggunakan IIS. Ketika saya sedang memperbaiki bug sistem lain, saya telah mengatur layanan apache untuk memulai secara manual, berharap untuk mengurangi kompleksitas sistem saya. Setelah saya memperbaiki bug lainnya, apache tidak akan mulai. Saya berhenti sebentar, tetapi yang diperlukan hanyalah mengatur apache kembali ke awal otomatis: Mulai> Alat Administratif> Layanan.

Rupanya ketika Apache memulai dengan cara ini, ia mengklaim port 80 sebelum proses SISTEM bisa.

seseorang semua googling saya muncul 'tidak dapat memiliki IIS dan Apache pada mesin yang sama.' ini untuk satu persen lainnya dari kita.

changokun
sumber
2

Coba netstat -b, yang semoga dapat menjelaskan situasi (menunjukkan apa .exe menggunakan port). Semoga berhasil.

Jon Onstott
sumber
bahkan tidak muncul di netstat -b, aneh, tapi bagaimanapun saya sudah menyelesaikannya, cari pembaruan.
GiH
-1 PID dari 4 tidak digunakan. C: \ blah> netstat -abon | lebih "Active Connections TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4 Can not obtain ownership information" dan setelah mengklik 'tampilkan proses dari semua pengguna' di windows 7 task manager, task manager mendaftar "System" untuk PID 4.
barlop
2

Bagi saya itu berhasil setelah menghentikan Layanan Agen Penerapan Web.

danpop
sumber
2

Jika Anda menggunakan produk Razer dan menginstal perangkat lunak Razer Synapse pada PC Anda, itu memblokir port 80 juga.

Itu tidak termasuk dalam netstatperintah jadi saya tidak dapat memecahkan masalah itu. Karena ada banyak layanan yang termasuk dalam perangkat lunak, saya tidak dapat menganalisis yang mana yang memblokir port. Setelah menghapus Razer Synapse, saya dapat memulai server Apache lagi pada Windows 10.

maurisrx
sumber
Terima kasih, saya pikir ini adalah Razer Chroma SDK Server. Saya menonaktifkannya di msconfig dan itu memecahkan masalah bagi saya!
Stefan
1

Ini tidak akan menjelaskan sisi PID, tetapi jika Anda menjalankan Skype, ia suka menggunakan Port 80 karena beberapa alasan.

davidtbernal
sumber
Saya menghadapi masalah yang sama, port 80 diakuisisi oleh NT Kernal. Tetapi ketika saya menjalankan Apache pada port 80, itu (ketika dikonfigurasi sebagai layanan run-on-startup). Tetapi ketika saya menghentikan Apache, dan mencoba menjalankan Tomcat pada port 80, Windows 7 tidak mengizinkan. Kernel NT atau Skype tidak boleh menggunakan port server web standar.
Asif Shahzad
Anda dapat mengubah port default skype dari pengaturan 'Connection'
Zee
1

Dalam kasus saya, itu terjadi setelah menginstal Microsoft Web Matrix. Menghapus instalasi sampah ini bersama dengan "Microsoft Web Deploy" memperbaiki masalah ini.

laurent
sumber
1

Saya mencari PID 4 dan mencari pertanyaan ini. Dari jawaban ini dan sebuah posting blog, saya pikir ada hubungannya dengan PID 4 mungkin adalah Layanan Windows, jadi Anda mungkin ingin mencari layanan yang relevan di services.msc.

Selain itu, proses ini dijalankan oleh Sistem, yang dianggap sebagai pengguna "masuk" yang lain.

Air dingin
sumber
1

Saya memiliki masalah yang sama dan itu karena IIS berjalan di server, Anda dapat menghentikannya menggunakan IIS Manager jika itu terjadi untuk Anda.

Kamiel Ahmadpour
sumber
1

Saya menghentikan Layanan Penerbitan Web Wide Web dan kemudian berhasil.

KnuturO
sumber
1

Tak satu pun dari ini bekerja untuk saya. Saya harus pergi ke pertanyaan SuperUser .

Jika ini adalah Proses Sistem — PID 4 — Anda perlu menonaktifkan driver HTTP.sys yang dimulai berdasarkan permintaan oleh layanan lain, seperti Windows Remote Management atau Print Spooler pada Windows 7 atau 2008.

Ada dua cara untuk menonaktifkannya tetapi yang pertama lebih aman:

    • Pergi ke manajer perangkat, pilih "tampilkan perangkat tersembunyi" dari menu / tampilan, buka "Non-Plug and Play Driver" / HTTP, klik dua kali untuk menonaktifkannya (atau mengaturnya ke manual, beberapa layanan tergantung padanya).

    • Mulai ulang dan gunakan netstat -nao | find ":80"untuk memeriksa apakah 80 masih digunakan.

Ini yang berhasil buat saya!

jason.zissman
sumber
Anda mungkin ingin menambahkan cara kedua yang lebih berbahaya untuk menonaktifkannya, untuk kelengkapan.
icedwater
0

Bagi saya, saya harus menghapus "Citrix Virtual Desktop Agent" di VM saya

Jerinaw
sumber
GoToMeeting juga CitrixOnline, cukup hapus instalan
KingRider
0

PID = 4 tidak muncul di Task Manager bahkan setelah menempatkan tanda centang pada 'Tampilkan proses dari semua pengguna ". Yah hanya ada satu pengguna.

Namun, netstat -b menunjukkan beberapa koneksi yang menuju ke PID = 4 yang sama yang pada komputer ini ditampilkan sebagai berikut.

masukkan deskripsi gambar di sini

Saya hanya memilih yang berkaitan dengan protokol TCP.

Ini diperoleh ketika kesulitan menembak IIS yang tidak dimulai setelah mencoba banyak lainnya. Saya tidak berpikir Anda harus menghentikan proses ini.

pengguna2063329
sumber
0

Tipe netstat -a -n -b -o |more

jika berhenti World Wide Web Publishing Servicemembantu

kemudian di IIS manager tinjau pengaturan ikatan masing-masing situs , dengan memilih situs dan pada panel samping klik mengikat. kemudian ubah port 80 ke sesuatu yang lain jika diperlukan.

Shimon Doodkin
sumber