Bagaimana cara membebaskan port 80 saya di localhost Windows?

124

Saya menginstal XAMPP 1.6.8 dan karena alasan tertentu tidak berhasil. Kemudian menyadari port 80 tidak gratis atau tidak mendengarkan. Bagaimana saya bisa merilisnya atau membuatnya gratis?

Terima kasih banyak!

informatik01
sumber
Saya yakin ini adalah pertanyaan duplikat dari (temukan jawabannya di sana) -> stackoverflow.com/questions/1430141/…
Dung
Duplikat atau tidak. Ini hit pertama di Google .
Bitterblue

Jawaban:

113

Penderitaan itu telah terpecahkan untuk saya. Saya menemukan bahwa apa yang mengambil alih port 80 adalah layanan api http. Saya menulis di cmd:

net stop http

Bertanya kepada saya "Layanan berikut akan dihentikan, apakah Anda ingin melanjutkan?" Ditekan y

Itu sebenarnya menghentikan sejumlah layanan.

Kemudian aja localhostdan wallah, Apache sudah aktif dan berjalan di port 80.
Semoga ini bisa membantu

Penting : Skype menggunakan port 80 secara default, Anda dapat mengubahnya di opsi skype> lanjutan> koneksi - dan hapus centang "gunakan port 80"

MuhFred
sumber
Pada Windows 7, saya tidak dapat menghentikan proses karena "akses ditolak", tetapi saya menunjukkan nama-nama proses yang akan dimatikan jika saya memiliki hak (saya tidak memiliki hak untuk netstat -a -b).
Pavel V.
1
@Pavel. Anda harus menjalankan command prompt dengan hak administratif. buka start, dan tulis di search "cmd" klik kanan pada cmd dan pilih Run as administrator.
MuhFred
67

netstat -ano

Itu akan menunjukkan kepada Anda PID dari proses yang mendengarkan pada port 80. Setelah itu, buka Task Manager -> tab Processes. Dari View -> Select Columnsmenu, aktifkan PIDkolom, dan Anda akan melihat nama proses mendengarkan pada port 80.

Francisco
sumber
1
Ini bagus karena mungkin ada proses lain dengan nama yang sama. Saya bertanya-tanya apakah ada perintah kill di windows yang dapat saya jalankan melawan PID yang ditemukan daripada melakukannya melalui task manager.
Sundeep
taskkill tidak menghentikan tugas. Ini masih menunjukkan port 80 sedang berjalan. @Jijo
Aakash Thakur
1
dapatkah Anda mencoba menggunakan / f / t di akhir, itu akan secara paksa mematikan tugas, saya saat ini menggunakan sistem linux, tidak diverifikasi
Jijo
41

netstat -a -b

Harus memberi tahu Anda program apa yang terikat ke port 80

Chad Grant
sumber
1
itu hanya memberi saya byte, unicast dll dll. Tidak memberikan apa yang terikat pada port 80. Apakah saya melewatkan sesuatu?
6
ntoskrnl.exe - sekarang apa?
Tim Lovell-Smith
1
Saya mencoba ini dan dikatakan "operasi yang diminta memerlukan ketinggian"
menciptakancape
Kamu adalah Tuhan! Sujud , dengan ini saya dapat menemukan nama layanan sebenarnya yang memiliki ID Proses yang sama dengan yang lain, jadi tidak dapat mengetahui sebelum layanan sebenarnya untuk membunuh dari pengelola tugas. Sangat berterima kasih!
divy3993
36

Saya pernah mengalami masalah ini sebelumnya,

jika Anda melihat Task manager (setelah mengaktifkan tampilan untuk PID), Anda akan menemukan PID = 4 adalah "port 80 digunakan oleh NT Kernel & System;"

Pergi saja ke

  1. Panel kendali
  2. Program
  3. Aktifkan / nonaktifkan fitur Windows
  4. periksa apakah bagian World wide web servicesbawah IISdicentang

Jika demikian, Hapus centang dan netstat (atau TCPVIEW) lagi untuk melihat apakah 80 gratis.

Eswar Rajesh Pinapala
sumber
2
Win7: start-menu mencari "IIS" menampilkan "IIS manager", di mana Anda dapat menonaktifkan server.
Philipp
34

gunakan netstat -bano di prompt perintah yang ditinggikan untuk melihat aplikasi apa yang mendengarkan di port mana.

Tapi Biasanya aplikasi berikut menggunakan port 80 di windows.

  1. IIS
  2. Layanan Penerbitan World Wide Web
  3. Layanan Admin IIS
  4. Layanan Pelaporan SQL Server
  5. Layanan Agen Penyebaran Web

Hentikan aplikasi di atas jika sedang berjalan dan periksa !!!

Rushik Parikh
sumber
Tahukah Anda bagaimana cara memastikan bahwa layanan ini tidak menggunakan port 80?
rahoolm
18

Gunakan TcpView untuk menemukan proses yang mendengarkan port dan menutup proses tersebut.

MMind
sumber
atau Anda dapat menggunakan findstar di jendela file batchstechinfo.com/2015/05/…
Aravinda
6

Pilihan lain untuk dicoba adalah menghentikan Layanan Pelaporan SQL Server.

Kinjal Dixit
sumber
terima kasih, bagi saya itu adalah Layanan Pelaporan Server SQL (MSSQLSERVER) tidak tahu mengapa tetapi ketika saya menghentikannya dengan konsol layanan, proses dengan pid 4 tidak terikat dari 0.0.0.0:80
Vladimir Shmidt
6

Anda dapat menggunakannya net stop httpakan menampilkan proses mana yang digunakan. Moslty menggunakan layanan web di seluruh dunia

Warwicky
sumber
6

Mencoba

netstat -anb -p tcp

yang menunjukkan port dan proses

MBaas
sumber
Status Aplikasi xampp saya menunjukkan apache dan mysql state 1 start 1 service 1 Tetapi browser masih tidak menampilkan localhost. kenapa begitu? ada petunjuk? :(
5

Ini hanya tebakan, tetapi karena port 80 adalah port konvensional untuk HTTP, Anda mungkin memiliki server web yang berjalan di sistem Anda. Apakah IIS aktif?

Jika Anda menjalankan IIS, Anda mungkin menjalankan layanan web farm. Itulah yang membunuh xampp saya.

Thomas L Holaday
sumber
1
Tidak, saya tidak memiliki IIS. Saya memang menggunakan xampp sebelumnya dan itu berhasil. Saya kira beberapa layanan lain duduk di port 80 dan tidak mengizinkan penginstalan ulang layanan Apache di atasnya.
2
Skype juga suka mencuri port 80, penyebab tak terduga yang umum!
Simon_Weaver
5

Ketik "netstat -ano" di baris perintah Anda. Saya melihat bahwa itu menunjukkan sesuatu untuk port Alamat Lokal 0.0.0.0:80.

Masalah saya adalah karena saya memiliki Layanan Pelaporan SQL Server di Port 80. Jadi saya mengikuti petunjuk ini dan mengubah port # dari 80 menjadi 81:

http://seankilleen.com/2012/11/how-to-stop-sql-server-reporting-services-from-using-port-80-on-your-server-field-notes/

Berikut adalah gambar baris perintah saya SETELAH saya mengubah nomor port untuk SQL Server Reporting Services:

masukkan deskripsi gambar di sini

Jika Anda masih mengalami masalah yang sama, baca forum ini:

http://forum.wampserver.com/read.php?2,66196,66233#REPLY

Gen
sumber
4

Skype suka menggunakan port 80 dan memblokir IIS. Itu masalahku.

Marcelo Mason
sumber
4

Saya juga punya masalah yang sama. net stop httptidak membantu dan opsi layanan web di bawah IIS di Panel Kontrol Windows tidak dicentang. Jadi di panel kontrol XAMPP saya hanya mencentang kotak centang Svc di dekat tombol start Apache (Instal Apache sebagai layanan) dan mem-boot ulang Windows. Dan sekarang setiap kali Windows memulai, Apache dimulai secara otomatis dan menempati port 80 sebelum layanan lain melakukannya. Bekerja untuk saya!

pengguna2513149
sumber
2

Layanan Windows yang Dikenal Yang Mendengarkan di Port 80

Dari Manajer Layanan (run: services.msc), hentikan dan nonaktifkan Layanan Windows ini yang diketahui mengikat ke port 80.

Double klik Service, dan ubah 'Startup Type' menjadi 'Disabled'…

  1. Layanan Pelaporan SQL Server (ReportServer)
  2. Layanan Agen Penyebaran Web (MsDepSvc)
  3. BranchCache (PeerDistSvc)
  4. Sync Share Service (SyncShareSvc)
  5. Layanan Penerbitan World Wide Web (W3SVC)
  6. Server Informasi Internet (WAS, IISADMIN)

skype juga menggunakan port 80 sebagai pengaturan default dan Anda dapat menghapus centangnya.

Anda mungkin, atau mungkin tidak, menginstal dan menjalankan beberapa Layanan ini.

Dalam kasus saya "Layanan Pelaporan SQL Server" membuka port 80.

pengguna3600935
sumber
0

Bagi saya, masalah ini dimulai ketika saya meng-host koneksi VPN di komputer Windows 8 saya.

Cukup menghapus koneksi dari "Control Panel \ Network dan Internet \ Network Connections" menyelesaikan masalah.

Zar
sumber
0

Saya mencoba menginstal nginxdari sini - http://nginx.org/en/docs/windows.html

Pergi ke http: // localhost / akan menampilkan sesuatu, setidaknya pesan "tidak ditemukan" yang tepat
Ini karena 80 adalah port default, dan itu diambil oleh proses lain.

Sekarang jalankan perintah di bawah ini:

net stop http

    // Above command stopped below services  
    // - SSDP Discovery  
    // - Print Spooler  
    // - BranchCache  
    // - Function Discovery Resource Publication  
    // - Function Discovery Provider Host  

Sekarang, pergi ke http: // localhost / akan gagal dengan pesan halaman link rusak.

Proses utama adalah Proses BranchCache
ini, setelah dihentikan, akan dimulai ulang dalam beberapa detik.
Jadi kita perlu menjalankan perintah lain yang kita butuhkan segera, contohnya di bawah ini:

// this will stop
net stop http

// immeidately run other command you want to
start nginx

Sekarang, buka http: // localhost / memberi saya:

Welcome to nginx!

Semoga membantu.

Manohar Reddy Poreddy
sumber
-1

dalam kasus saya, jendela iis untuk menghentikan Layanan Agen Penyebaran Web. Ketik cmd

 net stop msdepsvc 
omong kosong
sumber