XAMPP, Apache - Kesalahan: Apache shutdown secara tak terduga

345

Saya baru saja menginstal ulang XAMPP, dan ketika saya mencoba memulai server Apache saya di Panel Kontrol XAMPP, saya sekarang mendapatkan kesalahan berikut:

16:50:25  [Apache]     Status change detected: running
16:50:26  [Apache]     Status change detected: stopped
16:50:26  [Apache]     Error: Apache shutdown unexpectedly.
16:50:26  [Apache]     This may be due to a blocked port, missing dependencies,
16:50:26  [Apache]     improper privileges, a crash, or a shutdown by another method.
16:50:26  [Apache]     Press the Logs button to view error logs and check
16:50:26  [Apache]     the Windows Event Viewer for more clues
16:50:26  [Apache]     If you need more help, copy and post this
16:50:26  [Apache]     entire log window on the forums

Bagaimana saya mengatasi ini?

Tomas Skovgaard
sumber
Saya mulai mengalami masalah ini setelah menginstal XAMPP versi baru. Saya pikir masalahnya adalah tentang port, karena hampir setiap pos berbicara tentang mereka, tetapi ternyata tidak. Ketika saya memeriksa error.log, saya melihat PHP Warning: 'vcruntime140.dll' 14.0 is not compatible with this PHP buildyang mengarahkan saya ke jawaban ini . Menginstal yang diperlukan yang dapat didistribusikan dapat menyelesaikan masalah.
akinuri

Jawaban:

415

Buka skype.

Alat -> Opsi -> Tingkat Lanjut -> Koneksi.

Hapus centang pada kotak centang " Gunakan port 80 dan 443 untuk alternatif untuk koneksi masuk "

Keluar dan Tutup semua jendela Skype. Coba mulai ulang Apache Anda.

Abuarif
sumber
7
jika tidak bekerja untuk siapa pun, coba periksa log kesalahan. atau jika Anda menggunakan vmware masuk ke EDIT> PREFERENSI> SHARED VMS> DISABLE SHARING dan ubah port dari 443 ke port lain misalnya 8443 dan simpan perubahan. restart xampp or wamp
Faisal Naseer
5
Saya mengubah skype, masih mencatat. Solusinya akhirnya menjadi ( stackoverflow.com/questions/14548768/… setup_xampp.bat untuk menyegarkan jalur]
Timmah
21
Ini bukan solusi yang tepat karena port mungkin diblokir karena aplikasi apa pun, tidak hanya Skype. Jawaban tertinggi ke-2 memiliki solusi yang lebih baik.
Rahul Kadukar
3
Ini adalah masalah paling umum yang dihadapi orang-orang meskipun ini bukan masalah dalam kasus saya. Masalah ini juga dapat muncul jika Anda memiliki entri yang salah di salah satu file ini httpd.conf dan httpd-vhosts.conf. Dalam kasus saya, saya memiliki virtual host yang dibuat yang menunjuk ke lokasi file pada hard drive eksternal saya dan ketika saya sedang menjalankan xampp hard drive eksternal saya tidak terhubung. Jadi, saya berkomentar bahwa kode host virtual sampai saat itu saya tidak menggunakan hard drive eksternal dan restart xampp untuk memperbaiki masalah.
Vineet Sajwan
2
Tidak selalu skype. Masalah saya adalah dengan vmware yang menggunakan port 443. Jika itu masalahnya Anda tidak perlu mengubah konfigurasi port 80.
Moradnejad
760

Saat saya bekerja di lingkungan perusahaan tempat pengembang menghadapi masalah firewall, tidak ada jawaban lain yang menyelesaikan masalah saya.

Karena port tidak digunakan oleh Skype, tetapi oleh beberapa aplikasi internal lainnya, saya mengikuti langkah-langkah di bawah ini untuk menyelesaikan masalah:

Langkah 1 - Dari Panel Kontrol XAMPP, di bawah Apache, klik tombol Config, dan pilih Apache (httpd.conf).

Di dalam file httpd.conf , entah bagaimana saya menemukan baris yang mengatakan:

Listen 80

Dan ubah 80 menjadi nomor / port yang Anda inginkan. Dalam skenario saya, saya menggunakan port 8080.

Listen 8080

Masih dari file httpd.conf , saya menemukan baris lain yang mengatakan:

ServerName localhost:80

Ubah 80 menjadi 8080.

ServerName localhost:8080

Langkah 2 - Dari Panel Kontrol XAMPP, di bawah Apache, klik tombol Config lagi, tapi kali ini pilih Apache ( httpd-ssl.conf ). Di dalam file httpd-ssl.conf , cari baris yang mengatakan

Listen 443

Dan ubah 443 menjadi nomor / port yang Anda inginkan. Saya akan menggunakan 4433 sebagai nomor port baru.

Listen 4433

Masih dari file httpd-ssl.conf , cari baris lain yang mengatakan

<VirtualHost _default_:443>

ServerName localhost:443

Dan ubah 443 menjadi 4433 .

<VirtualHost _default_:4433>

ServerName localhost:4433

Ingatlah untuk menyimpan file httpd.conf dan httpd-ssl.conf setelah melakukan beberapa perubahan. Kemudian restart layanan Apache.

Min2
sumber
Jawaban yang diberikan oleh @ Min2 berfungsi di setiap kasus, tetapi terkadang ini gagal karena Anda perlu memeriksa apakah ada layanan bernama "Apache HTTP Service" yang berjalan di Task Manager. Akhiri layanan ini dan lakukan fungsi-fungsi yang ditentukan di atas, Anda sekarang akan mendapati Apache berfungsi.
Aadil
4
Saya memutakhirkan ke Windows 10 dan XAMPP tidak berfungsi. Saya mengikuti solusi Anda dan itu bekerja dengan baik.
fuddin
6
Ini adalah perbaikan untuk bug windows 10. Terima kasih banyak !
Javed Ali
3
Bekerja untukku. Ini harus menjadi solusi yang diterima; solusi Skype sangat terbatas.
ptrcao
1
Saya telah membuat perubahan untuk 80 dan 443 port tetapi masih menunjukkan kesalahan tidak ada skype di sistem saya
Bhargav Venkatesh
96

Satu hal yang dapat Anda lakukan adalah menghentikan layanan di port 80 dengan mengeluarkan

net stop http

dalam cmd. Anda akan ditanya apakah Anda yakin ingin menghentikan layanan itu. Saya mengetahui bahwa saya memiliki beberapa layanan yang tidak saya gunakan dan nonaktifkan.

Untuk melihat siapa lagi yang menggunakan port 80 ketik cmd

netstat -abno

Saya berasumsi Anda ingin menjalankan Apache pada port 80. Jika ini masalahnya dan Anda ingin menyimpan layanan yang bertentangan, Anda harus mengaitkannya dengan port baru.

Jika masalahnya bukan port sibuk Anda juga dapat mencoba yang berikut: pilih "tampilkan informasi debug" di panel konfigurasi XAMPP. Saat memulai Apache, Anda akan ditampilkan sesuatu seperti "Melaksanakan" c: \ xampp \ apache \ bin \ httpd.exe ". Jika Anda menjalankannya

c:\xampp\apache\bin\httpd.exe

dalam cmd Anda akan mendapatkan lebih banyak informasi (saya misalnya pernah memiliki beberapa masalah dengan file httpd.conf saya).

Terkait: Bagaimana cara membebaskan port 80 pada localhost Windows? dan Apache tidak akan berjalan di xampp

pengguna2314737
sumber
12
+1 untuk httpd.exe. Jika Anda kehilangan modul, pastikan antivirus Anda belum menghapusnya (terutama jika Anda menjalankan Kasperky).
thomas88wp
1
Saya memiliki masalah yang sama dan menyelesaikannya dengan memastikan bahwa setiap direktori yang ditentukan dalam /apache/conf/extras/httpd-bhosts.conf adalah jalur yang sebenarnya.
Matius
8
terima kasih pria yang menjalankan c: \ xampp \ apache \ bin \ httpd.exe pada cmd melempar kesalahan yang tepat dan mampu memperbaikinya
Khan Shahrukh
Wordk ini pada server 2019. net stop http melakukan trik menghentikan semua layanan menggunakan port itu. Layanan ini saya gunakan untuk memulai secara manual.
Henry
Jika Anda menggunakan Windows 7, sebaiknya lihat jawaban Kunal yang memberi tahu cara menghentikan IIS. Tentang trik ini, net stop httpberhasil, tetapi memiliki efek samping membuat printer tidak lagi terdaftar ketika mencoba mencetak sesuatu (dan sampai me-reboot komputer).
OuzoPower
79

Di XAMPP Control Panel V3.2.1, klik tombol "NetStat" di kanan atas. Pastikan port 80 tidak digunakan oleh program lain. Kemudian klik "Shell" Tepat di bawahnya. Terbitkan perintah ini "Ketikkan ap lalu TAB dua kali"

Apache_Start.bat

Anda benar-benar akan melihat kesalahan yang tepat mengapa Apache gagal. Kemungkinan besar masalah konfigurasi host virtual atau mungkin sesuatu yang lain. Ini akan menampilkan nomor baris di mana kesalahan terjadi. Perbaiki saja kesalahan itu. Perhatikan bahwa di RootDocument, trailing \ juga bisa menjadi sumber kesalahan. Hapus semua trailing "\".

Hammad Khan
sumber
7
Itu hanya membantu saya waktu besar - itu memberitahu saya bahwa ada kesalahan ketik - setelah menghabiskan berjam-jam mencoba mencari tahu apa yang salah Terima kasih banyak @hmd
Sebastian Sulinski
Terima kasih, saya mengubah nama folder xampp, dan ini membantu saya menemukan kesalahan.
Peter Nguyen
10
Ini harus menjadi jawaban teratas, karena berfungsi untuk setiap kemungkinan kesalahan dengan XAMPP!
user11153
Ini juga harus dalam jawaban yang benar. Saya memiliki kesalahan bodoh di vhost dan itu menyebabkan kesalahan .... terima kasih
Mikel
Super G ... menjadi jawaban teratas, karena berfungsi untuk semua kemungkinan kesalahan dengan XAMPP !!!
OpenWebWar
37

Ikuti langkah ini:

  1. Buka panel kontrol XAMPP Anda lalu klik "Config" -nya
  2. Pilih "Apache (httpd.conf)" dan cari kode di bawah ini dan ubah menjadi yang ini:

    # Ubah ini untuk Mendengarkan alamat IP tertentu seperti yang ditunjukkan di bawah ini

    #untuk mencegah Apache merambah semua alamat IP yang terikat.

    #Listen 0.0.0.0:80

    #Listen [::]: 80

    Listen 80

    # Dukungan Dynamic Shared Object (DSO)

    1. Simpan ( Ctrl+ S)
    2. Setelah itu, kembali ke panel kontrol XAMPP dan klik konfigurasinya lagi.
    3. Pilih "Apache (httpd-ssl.conf)", cari kode ini di bawah, dan ubah lagi:

    # Catatan: Konfigurasi yang menggunakan IPv6 tetapi bukan alamat yang dipetakan IPv4 membutuhkan dua

    # Dengar arahan: "Dengarkan [::]: 443" dan "Dengarkan 0.0.0.0:443"

    #

    #Listen 0,0.0.0:443

    #Listen [::]: 443

    Listen 443

    1. Simpan ( Ctrl+ S)
    2. Kemudian, klik "config" (catatan: di atas netstat) dan klik "service and port settings".
    3. Ubah "Port Utama" ke 8080 dan "Port SSL" ke 4433, lalu simpan.
    4. Terakhir, buka "panel kontrol" -> "Program & Fitur" -> "Nyalakan atau Matikan Windows".
    5. Hapus centang "Layanan Informasi Internet" Anda, dan kemudian klik OK.

Tunggu saja dan komputer / laptop Anda akan secara otomatis restart dan mencoba untuk membuka panel kontrol XAMPP Anda lagi, dan kemudian mulai Apache Anda.

kimiberi
sumber
11
Awas. Jika Anda menginstal VMWare Workstation (10.0), opsi untuk membagikan VM adalah mendengarkan port 443. Hal itu mencegah server Apache untuk memulai (xampp). Lihat Edit> Preferensi> Bagikan VM
toesslab
3
Dengarkan 80 -> Dengar 81 (dekat jalur 58) ServerName localhost: 80 -> ServerName localhost: 81 (dekat jalur 218)
Noah Martin
2
Bekerja untukku. Saya mencoba mengubah port Apache menggunakan XAMPP 'Config GUI' dan tidak berhasil. Mengubahnya secara manual dan semuanya bekerja. Pelajaran keras lainnya untuk kemalasan.
Matt Carr
Akhirnya solusinya buat saya. Saya sudah mengubah skype, tetapi tidak membantu. Terima kasih! (: Satu-satunya masalah adalah poin 3 & 4 di bagian terakhir deskripsi Anda.
codepleb
Bekerja untuk saya, saya menggunakan windows7 tanpa VMware. +1
pengguna3437460
26

Masalah saya adalah bahwa di httpd.conf DocumentRootdan <Directory>entri menunjuk ke folder yang tidak ada.

Misalnya, httpd.conf 'asli' memiliki entri berikut:

DocumentRoot "c:/Apache24/htdocs"
<Directory "c:/Apache24/htdocs">

Jika Anda telah menginstal di C: \ xampp maka Anda perlu mengubah entri tersebut agar sesuai, yaitu

DocumentRoot "c:/xampp/htdocs"
<Directory "c:/xampp/htdocs">
CramerTV
sumber
Saya mengganti nama folder dan itu disebabkan folder http root tidak benar dan tidak membiarkan XAMPP memulai. chaninging nama folder ke yang benar memperbaiki ini :)
VSB
2
+1, saya benar-benar lupa bahwa saya merestrukturisasi folder saya =)
Morten Høgseth
Saya juga - "... tapi saya tidak mengubah apa pun! ..." yeah, kecuali nama direktori root - oops ;)
CramerTV
2
tidak lain hanyalah jawaban sederhana yang mengingatkan seseorang akan kebodohannya sendiri kadang-kadang ..: D yang melakukannya untuk saya, terima kasih!
charlie carver
21

Jika Anda menggunakan Windows 7. Cari IIS dalam pencarian Windows (Klik ikon Window di kiri bawah dan ketik di mana dikatakan 'Cari program dan file').

Buka IIS (Layanan Informasi Internet) .

Di sisi kanan di panel tindakan. Klik Berhenti.

Catatan: Tautan berhenti memudar pada tangkapan layar. Karena saya sudah menghentikannya. Screenshot IIS Masalah diselesaikan!

Kunal
sumber
2
Pada Windows 10 tidak dapat menemukan IIS untuk dieksekusi, maka saya mencopot IIS Control Panel > Programs > Programs and Features > Windows Componentsyang akhirnya menyelesaikannya.
eskalator
@ eskalator dengan baik, saya jelas menyebutkan bahwa "Jika Anda menggunakan Windows 7".
Kunal
Terima kasih. Bekerja seperti pesona dan menyelesaikan masalah bagi saya setelah mencoba beberapa trik yang disebutkan tidak berhasil. The net stop httpdari command prompt ditinggikan juga bekerja, tetapi memiliki efek samping membuat printer tidak tersedia.
OuzoPower
17

Saya memiliki masalah yang sama, dan ternyata saya lupa menjalankan setup_xampp.bat(versi portabel).

Paul
sumber
2
Setelah memindahkan folder xampp saya ke drive lain daripada c: \ apache tidak memulai lagi. Solusi ini berhasil untuk saya. Terima kasih banyak! :)
Pascal Cloverfield
Saya pikir langkah ini wajib, ketika kita mengunduh perangkat lunak Xampp sebagai arsip zip dan mencoba memulai server Apache.
shasi kanth
Ini adalah jawaban untuk versi portabel (kasing saya). Terima kasih telah menunjukkannya.
Sidney de Moraes
Itu memecahkan masalah saya juga. Saya tidak pada versi portabel. Saya mengunduh setup untuk xampp pada Windows 10. Setelah instalasi (itu exe bukan zip), saya punya masalah yang dijelaskan dalam posting pertama. Setelah mencari solusi untuk masalah ini saya menjalankan setup_xampp.bat dan sekarang sudah berfungsi.
quokka-web
Windows saya rusak karena nama drive yang diubah dan jalur file absolut dalam kekacauan total. Saya menjalankan setup_xampp.bat dan semuanya telah dikonfigurasi ulang dengan benar.
gegobyte
16

Ini bekerja untuk saya ...

Jika Anda menggunakan windows ...

Cari 'cmd' di bilah pencarian windows.

Masukkan ini:C:\xampp\apache\bin\httpd.exe

Temukan file mana dan baris mana kesalahan terjadi.

Misalnya, milik saya ada di file di bawah pada baris 37.

httpd-multilang-errordoc.conf

Buka kode dan perbaiki kesalahan dengan menghapus baris atau memperbaikinya.

Selesai! Saya harus bekerja sekarang.

:)

SreeniH
sumber
Bagus! ini sangat membantu saya, terima kasih
Capensis
Terima kasih. ini berhasil. ada kesalahan sintaks di file konfigurasi vhost saya
Emtiaz Zahid
12

Tampaknya tidak ada yang menjawab tentang menjalankan xampp_start.exe.

Saya melakukan semua jawaban sebelumnya tetapi itu tidak memperbaiki masalah saya. Saya menemukan bahwa menjalankan xampp_start.exe akan memberi Anda info terperinci tentang masalah ini.

Inilah yang saya lihat di ujung saya:

xampp_start

Seperti yang Anda lihat saya mengalami masalah jalur atau xampp menunjuk ke folder yang tidak ada.

Loreto Gabawa Jr.
sumber
Ini adalah penyelamat hidup. jalur file ssl dan log saya tidak valid. ini membantu saya memperbaikinya dan berfungsi sekarang.
Ali Azhar
Jawaban keren Menyelamatkan hari saya
Raju
11

Ketika saya menemukan bahwa tidak ada proses menggunakan port 80 dengan menggunakan perintah

netstat -abno | find ":80"

tidak ada masalah dari proses apa pun menggunakan port 80.

Lalu saya menjalankan perintah (dalam cmd)

C:\xampp\apache\bin\httpd.exe

itu menunjukkan beberapa kesalahan dalam konfigurasi host virtual dalam httpd-vhosts.conffile yang baru-baru ini diedit oleh saya untuk instalasi di lingkungan PHP WordPress di Eclipse IDE. Jadi saya menghapus baris-baris itu dan Apache mulai dengan sempurna.

JDP
sumber
2
Sempurna! Saya telah menentukan direktori yang salah untuk file log dan karenanya itu tidak dimulai. Memperbaiki itu memperbaiki masalah!
Hammad Khan
KAMU KEREN!!!! Semua solusi di atas tidak bekerja untuk saya, ketika saya mencoba apa yang Anda lakukan itu memberi saya kesalahan berbeda tentang garis SSLRequiredSSL di httpd-xampp.conf yang kemudian saya masukkan # di depannya untuk menonaktifkannya. By the way, saya harus reran C: \ xampp \ apache \ bin \ httpd.exe berkali-kali di baris perintah setelah setiap perbaikan untuk menemukan saya baris lain yang memiliki kesalahan yang sama.
alaswer
11

Hal sederhana yang dapat Anda lakukan adalah memeriksa apakah Skype atau VMware diinstal di mesin Anda atau tidak.

Skype menggunakan port 80 dan 443 sebagai port tambahan untuk koneksi yang masuk. Untuk mengubah nomor port di Skype, buka

Alat> Opsi Koneksi> Koneksi

di jendela Skype. Sekarang ubah nomor port 80 default ke yang lain.

VMware Workstation menggunakan port 443 untuk berbagi. Untuk mengubah ini, buka VMware Workstation dan goto

Edit> Preferensi> Vms Bersama

  1. Klik buton "Ubah Pengaturan"
  2. Kemudian Klik "Nonaktifkan Berbagi"
  3. Kemudian ubah nomor port https yang digunakan (443)
  4. Kemudian Anda dapat mengklik tombol "Aktifkan Berbagi"

Itu yang harus Anda lakukan. Mulai ulang XAMPP dan jalankan server Apache.

ular berbisa
sumber
Setelah membuat perubahan skype, apache masih belum dimulai, jadi saya melakukan perubahan VmWare yang disebutkan dan berhasil.
Haris ur Rehman
9

Saya memiliki masalah yang sama beberapa waktu lalu. Saya memiliki laptop lama, di mana hampir semua port baik diblokir atau tidak berfungsi. Beginilah cara saya melakukannya.

  1. Buka panel kontrol XAMPP.

  2. Klik pada Config

  3. Kemudian, masuk ke file Apache httpd.conf . Buka dengan editor teks.

  4. Cari "80" (Lakukan Ctrl+ Fdan temukan semuanya. Ganti dengan 8080 atau 4040 atau 4000 ).

  5. Simpan file. Dan mulai ulang XAMPP.

Ini bekerja dengan baik untuk saya, dan saya harap ini membantu Anda juga.

Pragyaditya Das
sumber
6

Bagi saya, layanan penerbitan web di seluruh dunia menggunakan port 80. Saya mematikan ini dengan menjalankan perintah berikut di cmd:

net stop http

Setelah itu, XAMPP menjalankan Apache tanpa masalah.

Memet Olsen
sumber
1
yang menyelesaikan masalah saya, tetapi sekarang kami menghentikan beberapa layanan, bagaimana layanan tersebut mempengaruhi jaringan saya?
Karavana
Saya menjalankan command prompt sebagai admin dan ini berhasil. Tapi pertanyaan saya adalah, apakah layanan akan berhenti tidak mempengaruhi komputasi normal, dan, bagaimana lagi saya akan mendapatkan mereka dihentikan, berdiri dan berjalan lagi.
AMRESH PANDEY
@ AMRESHPANDEY Saya menemukan sesuatu yang mungkin berguna dalam kasus itu. Saya tidak mencoba jika itu berhasil. Jangan ragu untuk menambahkannya sebagai jawaban jika berfungsi: mikeplate.com/2011/11/06/…
Memet Olsen
5

Kesalahan ini terjadi karena port, yang dialokasikan untuk Apache, digunakan oleh program lain. Untuk memeriksa aplikasi yang menggunakan port, yang kami alokasikan untuk Apache, dapat diperoleh dengan mengklik,

Tombol Netstat .

Beranda XAMPP

Ini adalah file Netstat,

Masukkan deskripsi gambar di sini

Pada awalnya, saya telah mengalokasikan port 8080 untuk Apache, dan saya baru saja menginstal Oracle DB.TNSLSNR.exe telah menggunakan port 8080 sekarang.

Jadi, dengan melihat file ini kita dapat memilih port yang tidak berbenturan dengan aplikasi lain. Dalam kasus saya, port 8060 tidak berbenturan dengan aplikasi apa pun. Dengan memilih itu kita dapat mengubah file httpd.conf (panel kontrol XAMPP -> Config ) seperti yang disebutkan di atas.

SithuSena
sumber
5
  1. unduh aplikasi xampp baru
  2. pasang itu
  3. hapus semua aplikasi VPN
  4. buka folder XAMPP jalankan setup_xampp.bat
  5. jalankan xampp-control.exe
sirmagid
sumber
Saya telah mengikuti poin 4, jalankan setup_xampp.bat dan mulai layanan (point5), semuanya bekerja dengan baik.
Devang Solanki
4

Dalam kasus saya, masalah ini disebabkan oleh upaya untuk mengunduh produk bitnami lainnya, seperti WordPress . Itu biasa ketika kita menginstal WordPress melalui XAMPP. Itu ditempatkan di xampp/appdirektori yang dapat diakses dari beranda aplikasi XAMPP.

Sebagai solusi, saya menghapus WordPress yang diinstal default dari xamppdirektori dan secara manual menginstal WordPress di htdocsfolder WordPress dengan mengunduhnya dan mengekstrak file zip ke dalam htdocfolder. Anda juga perlu memulai ulang XAMPP atau sistem setelah menghapus / menghapus WordPress default . Semua baik-baik saja bagi saya sekarang.

A.Aleem11
sumber
3
  1. Pastikan \xamppfolder Anda sudah di root! Ini penting karena jalannya relatif.

  2. Kemudian pastikan Anda menjalankan xampp_control.exehak admin.

  3. Kemudian ubah file di bawah ini untuk menghindari masalah dengan port 80 yang diblokir.

Di \xampp\xampp-control.inidalamnya harus diatur:

[ServicePorts]
Apache=8080
ApacheSSL=4433

Temukan \xampp\apache\conf\httpd.confdan atur:

Listen 8080

ServerName localhost:8080

Temukan \xampp\apache\conf\extra\httpd-ssl.confdan atur:

Listen 4433

<VirtualHost _default_:4433>

ServerName www.example.com:4433

Kemudian akhiri semua layanan dan mulai kembali xampp-control.exedengan hak admin. Itu harus dijalankan!

Kai Noack
sumber
3

Saya baru saja menemukan kesalahan ini pada xampp v3.2.2 saya [win 10 pro x64],

Saya pertama kali mencoba menjalankan perintah "net stop http" di admin cmd, tetapi tidak menyelesaikan masalah, jadi saya melanjutkan untuk mencoba perintah "netstat -abno" dan saya mengetahui bahwa port ssl (443) ada di gunakan oleh vmware.

jadi saran saya, jangan hanya mencari apa yang memblokir port 80, juga mencari program potensial menggunakan port 443. karena saya benar-benar tidak suka mengubah nomor port default saya menjadi 8081 dan 4433.

Jadi ini adalah bagaimana Anda dapat menyelesaikan masalah ini ...

pertama-tama ketikkan perintah berikut

net stop http

kemudian coba jalankan apache, jika masih tidak berhasil. ketikkan perintah berikut

netstat -abno

dan Anda pasti akan mendapatkan aplikasi merepotkan yang menggunakan port berharga Anda.

salin pid dan kemudian gunakan perintah berikut

taskkill /f /pid PID

di mana PID adalah pid yang Anda salin.

Semoga ini bisa membantu seseorang.

Kingston Fortune
sumber
2

Happend ini karena port default 80 diblokir untuk Apache. Anda perlu mengubah port atau membuat port dapat diakses.

Buka file konfigurasi Apache (httpd.conf) Anda di instalasi Apache.

Temukan garis-garis ini:

#

Dengarkan 192.168.1.2:80

Dengarkan 80

#

Di sini 192.168.1.2 adalah alamat IP pribadi saya. Ubah sesuai keinginan Anda.

Ubah seperti di bawah ini

Dengarkan 192.168.1.2:8081

Dengarkan 8081

Sekarang ketika Anda mengakses localhost Anda harus menambahkan port secara eksplisit sebagai http: // localhost: 8081 / ...

Priyankara
sumber
2

Salah satu penyebabnya mungkin karena Anda tidak menjalankan Panel Kontrol XAMPP sebagai administrator.

Saurabh RS
sumber
2

Saya memecahkan masalah dengan menghentikan layanan "Layanan Agen Penyebaran Web". Buka: Sistem -> Manajemen Komputer -> Layanan -> Layanan Agen Penyebaran Web . Hentikan layanan ini dan mulai bekerja XAMPP. Saya pikir ini adalah layanan oleh MS Webmatrix.

(Jerman: Systemsteuerung -> System und Sicherheit -> Verwaltung -> Dienste -> Webbereitstellungs-Agent-Dienst )

Harry
sumber
2

Saya memiliki pesan kesalahan yang sama persis seperti OP, tetapi masalah saya tidak diatasi oleh jawaban yang ada. Banyak jawaban yang berhubungan dengan konflik pada port 80, yang saya tahu tidak saya miliki, karena saya telah localhost merespons pada port 80 baru-baru ini.

Ternyata saya secara tidak sengaja mengubah ServerRoot ketika saya bermaksud untuk mengubah DocumentRoot (bodoh, saya tahu), dan meskipun direktori ServerRoot baru ada, itu tidak berisi file konfigurasi dan apache hal-hal lain yang diperlukan, yang menyebabkannya gagal pada startup. Pesan kesalahan mungkin mengatasi skenario ini dengan kata-kata ' dependensi yang hilang '.

Pada sistem Windows saya, pengaturan ServerRoot kembali ke C: / XAMPP / apache menyelesaikan masalah.

Gundark
sumber
2

Server Apache secara default berjalan pada port 80, 443. Masalah Anda adalah salah satu atau kedua port sibuk. Biasanya Skype atau VMware Workstation menggunakan dua port ini. Jadi, pastikan mereka tidak berjalan. Cara terbaik untuk memastikan port bebas di windows adalah:

  • Klik tombol windows.

  • Di bilah pencarian ketikkan resmon , untuk membuka monitor sumber daya resmon.exe .

  • Buka Listening Ports , ini akan menunjukkan kepada Anda port bekas yang dibuka.

  • Sekarang Anda dapat melihat proses mana yang menggunakan port 80 dan 443.

  • Kemudian Anda dapat mematikan proses baik dari CMD menggunakan PID-nya (yang ditampilkan di monitor sumber daya), atau langsung dari Task Manager.

  • Untuk mematikan proses dari CMD menggunakan tipe PID Taskkill /PID 26356 /F, di mana 26356 adalah PID.

Mohamed Seif
sumber
2

Solusi terbaik untuk pengguna windows adalah:

  1. Buka netstat (dari XAMPP CONTROL PANEL)
  2. Temukan PID proses yang menggunakan port 80.
  3. Buka CMD dengan Administratif.
  4. Jalankan taskkill /pid PID(bukan PID gunakan pid u ditemukan dari netstat)
    Heyy enjoy u Done .....
JavaHacker
sumber
2

Baiklah, tidak ada port 80, tidak ada Skype yang menyalahkan! Masalah saya memang cukup sederhana (& konyol), saya punya backslash tambahan (\) (di Windows) setelah jalur yang saya tentukan untuk direktif DocumentRoot, jadi saya membuat perubahan seperti ini dan masalahnya hilang seperti sup bebek .

Index.php saya berada di jalur "D: \ websites \ dummy" dan httpd.conf saya seperti ini:

<VirtualHost 127.0.0.2:80>
ServerName dummy.local
DocumentRoot "D:\websites\dummy\" #mistake here
</VirtualHost>
<Directory "D:\websites\dummy\"> #mistake here
    Require all granted
</Directory>

Jadi ubah saja dua baris seperti ini:

#first mistake fix:
DocumentRoot "D:\websites\dummy"
#second (similar) mistake fix:
<Directory "D:\websites\dummy">

... dan semuanya baik-baik saja sekarang. Untuk mencegah kesalahan seperti itu di masa depan, salinlah selalu path folder yang ingin Anda rujuk daripada mengetiknya sendiri.

Simon.B
sumber
1

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
1

Perhatikan bahwa setiap kali Anda mengubah port default, browser Anda tidak akan tahu tentang itu. 80dan 443tampaknya menjadi standar dalam beberapa cara, jadi misalnya, jika Anda berubah 80ke 8080, Anda harus mengakses website Anda dengan cara ini maka:

localhost:8080/path_to_your_website.php

phil294
sumber
1

Solusi terbaik

buka panel kontrol XAMPP, klik config untuk Apache, lalu klik Apache (httpd.config) .Sekarang di editor teks. ctrl + f -> cari "Dengarkan 80" dan gantikan dengan "Dengarkan 8079" tanpa kutipan :) tapi sekarang Anda harus menggunakannya seperti ini http: // localhost: 8079 /

PS, saya mencoba mengubah pengaturan port untuk skype, menghentikan Layanan Web Deployment Agent yang tidak dapat saya temukan di windows 10, cmd -> net stop http, dan metode lain tetapi tidak ada yang berhasil kecuali ini.

osamakhair
sumber