XAMPP: Apache başlatılamadı (Windows 10)


90

XAMPP kullanıyorum ve Apache'yi başlatabilirim, ancak MySQL ( phpMyAdmin ) başlıyor!

Başladığımda şu hatayı alıyorum;

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

Üzerinde arama yapıyorum ve Config -> Service and Port ayarından Apache portunu değiştiriyorum. Sahibim;

Service name: Apache 2.4
Main port: 122
SSL port: 444

Ayrıca Skype'ı kaldırıyorum (Windows 8/10 / Metro sürümü). Hiçbir şey çalışmıyor. Gelen httpd.conf dosyasında ı var;

Listen 122
ServerName localhost:122

Başlıyorum apache_start.batve alıyorum ;

(OS 10013)An attempt was made to access a socket in a way forbidden by its access permissions.  : AH00072: make_sock: could not bind to address [::]:445
(OS 10013)An attempt was made to access a socket in a way forbidden by its access permissions.  : AH00072: make_sock: could not bind to address 0.0.0.0:445
AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs

Lütfen tüm günlük dosyalarının mevcut olmadığını unutmayın ! Skype kaldırılır.


Bağlantı noktasının engellenip engellenmediğini kontrol ettiniz mi?
Rizier123

1
Yönetici olarak da çalıştırmayı deneyin
nonamorando

3
Apache'yi etkinleştirmeye çalışırken skype çalıştırıyor musunuz? Eğer öyleyse skype ayarlarını değiştirin.
iSaumya

3
Porta sahip olamaz localhost:80ve dinleyemezsiniz 122. Hangi bağlantı noktasının dinleneceğini seçin.
Lorenz Meyer

Tamam, bazı değişiklikler yaptım: @ Rizier123 -> Kontrol ediyorum ama bunun iyi bir yol olup olmadığından emin değilim. @ Will-Campbell -> Evet, ama daha fazlası değil. @iSaumya -> Skype bilgisayarımda değil. @ Lorenz-Meyer -> Şimdi sahibim Listen 122veServerName localhost:122
Félix Desjardins

Yanıtlar:


224

Güncelleme: 15 Mayıs 2018:

En son Windows 10 güncellemesi (yeniden) World Wide Web Publishing Service'i etkinleştirdi (Almanca: WWW-Publishingdienst ) . Bu, daha sonra yapabileceğiniz güncelleme yapılandırması sırasında belirlediğiniz seçeneklere bağlı olabilir.

Güncelleme: 4 Ağustos 2015:

Windows 10'un temiz kurulumunu gerçekleştirdiyseniz, Word Wide Web Yayımlama Hizmetine sahip olmayabilirsiniz . Bu durumda, basit WAMP / XAMPP kurulumu iyi çalışmalıdır.

Başlamazsa, Visual C ++ Yeniden Dağıtılabilir'i yüklemeyi ve ardından WAMP / XAMPP'yi yeniden yüklemeyi deneyin .


WAMP ile benzer bir sorunla karşı karşıyaydım. Windows 10 TP'de, Word Wide Web Publishing Service önceden yüklenmiş olarak gelir. Bu, IIS ile ilgilidir ve ihtiyacınız yoksa kaldırabilirsiniz.

Bu, bağlantı noktasını bloke 80ederek Apache'nin garip davranmasına neden olur. Aşağıdakileri yapıp tekrar deneyebilirsiniz.

  • Başlat'a gidin, services.msc yazın
  • World Wide Web Publishing Service'i bulmak için Hizmetler penceresinde aşağı kaydırın .
  • Üzerine sağ tıklayın ve Durdur'u seçin .

Bu, 80 numaralı bağlantı noktasını ücretsiz yapmalı ve WAMP / XAMPP'yi yeniden başlatmak sizi hazır hale getirecektir !

Bunu düzeltmenin başka yolları da var. Bkz. WAMP'ı Windows 10'da Çalışır Hale Getirme .


7
Listelenen bir hizmet olarak "World Wide Web Publishing Service" yoksa ne olur?
Xtremefaith

6
Adı hizmetinin olduğu W3SVC ederken açıklama olduğunu World Wide Web Yayımlama Hizmeti . Başlangıçta hizmete sahip olduğumu düşünmemiştim çünkü isme göre sıralama yaparken açıklanan hizmeti görmüyordum.
Jake Z

1
Evet, ben de bu sorunu yaşadım, kontrol ettiğimde bana "PID'si 4 olan bir işlem 80 numaralı bağlantı noktasını kullanıyor" diyordu, işlem adı "Sistem" idi. Bu işlemi durdurmayı denersem bilgisayarımı mahvedebileceğimi düşünmeye devam ettim. Ama bu mükemmel çalıştı. Teşekkürler
Kebap Programmer

1
Uniform sunucu Z'yi kullananlar için (ki bu harika!), Bunun o sunucu için de çalıştığını onaylayabilirim.
MisterM

1
@PraveenPuglia hum .. ilginç yorum, bana çalış! "ntoskrnl.exe" dosyasını kaldırmaya çalışıyorum bir neden bağlantı noktası 4 ... çok google arama virüs demek ... durdurmak için güzel hizmetler iş lol .. teşekkürler kardeşim
KingRider

38

Bu sorunu çözmek kolaydır:

  1. Yönetici ayrıcalıklarına sahip bir komut istemi açın
    • "Cmd" yi bulun, üzerine sağ tıklayın ve "Yönetici" yi seçin.
  2. Komut isteminde yazın net stop W3SVCve Enter'a basın.

Artık WAMPP'ye tıklayabilir ve tüm hizmetleri yeniden başlatabilirsiniz. Tarayıcınızı açın ve "localhost" a gidin.

W3SVC'yi yeniden başlatmanız gerekirse,

  1. Yönetici ayrıcalıklarına sahip bir komut istemi açın
  2. Komut isteminde yazın net start W3SVCve Enter'a basın.

Windows 10'un yayınlanan sürümünde "Sistem hatası 3 oluştu. Erişim reddedildi."
Mike_Laird

Yönetici olmanız gerekiyor. Tekrar deneyin.
DIANGELISJ

Evet, teşekkürler DIANGELISJ. Windows 10'da cmd'ye sağ tıklayın ve ardından yukarıdaki talimatlarınıza, ardından httpd.exe'ye sağ tıklayın ve Apache'yi tekrar çalıştırdım. Httpd.exe kutusu siyah bir boşluktur, ancak Apache çalışır.
Mike_Laird

XAMPP kullanarak Windows 10'da da aynı sorunu yaşadım. Her yeniden başlatmadan sonra XAMPP kontrol paneline gitmem ve Apache ve MySQL hizmetlerini yeniden kurmam ve yeniden başlatmam gerekir. XAMPP kontrol panelini yönetici olarak çalıştırmak onu iyileştirmiş gibi görünüyor, teşekkürler!
SharpC

bu doğru cevap, tek yapmanız gereken IIS'yi kapatmak ve sonra xampp'i başlatmak. Denetim Masası - Yönetici - İnternet Bilgi Hizmetleri - "Dur" İşte bu. Turta kadar kolay. (yukarıdakiyle aynı şey, sadece arayüzler aracılığıyla.)
Elaine Ossipov

17

Bu sorunu çözmenin bir yolunu buldum:

  1. Skype'ı da kullanıyorsanız, 80 ve 443 numaralı bağlantı noktalarını kullanmayı belirten alanın işaretini kaldırın (Ekstra -> Ayarlar -> Gelişmiş -> Bağlantılar -> 80 ve 443 Bağlantı Noktalarının İşaretini Kaldır)
  2. Skype ve XAMPP'yi yeniden başlatın.

Bu işe yaramazsa,

  1. Başlat'a gidin ve "services.msc" yazın
  2. "World Wide Web Yayınlama Hizmeti" ni bulun
  3. Bu girişe sağ tıklayın, "Durdur" u seçin, ardından XAMPP'yi yeniden başlatın.

Bu işe yaramadıysa ve "World Wide Web Publishing Service" kullanılamıyorsa,

  1. Denetim Masası'na gidin, "Programları Kaldır" seçeneğine gidin, ardından "Windows özelliklerini aç / kapat"
  2. "İnternet Bilgi Hizmetleri" ni bulun
  3. Onay kutusunu tıklayın ve "Tamam" ı tıklayın.
  4. Yeniden başlatın, ardından ikinci yaklaşımı tekrarlayın (services.msc)

Teşekkürler, ama cevap çoktan cevaplandı. Belki birine yardımcı olabilir ese (:
Félix Desjardins

Cevabınız bana yardımcı olamadı, kendi çözümümü buldum. Yine de teşekkürler :)
Fazal

1
Parlak! Sadece Skype'ın Apache'yi engellemesiydi! Sürecin en sevdiğim kısmı: Skype'ın 80 ve 443 numaralı bağlantı noktalarını kapattıktan sonra, Skype'tan çıkmak zorunda kaldım. "Skype'tan çıkarsanız onu kullanamazsınız" diyen bir uyarı geldi. Eh, ha!
CJ Dennis

14

Apache'nin bağlantı noktasını değiştirebilirsiniz:

  1. C: \ xampp \ apache \ conf \ httpd konumuna gidin.
  2. Ctrl + F kombinasyonu ile bulun # 12.34.56.78:80 dinleyin ve 80'i istediğiniz gibi değiştirin, örneğin 81
  3. Aynı Listen 80 ile 81'e değiştir
  4. SunucuAdı localhost ile aynı: 80, 81 olarak değişir.
  5. C: \ xampp \ apache \ conf \ extra \ httpd-vhosts'a gidin ve 80'i 81 olarak değiştirin

NameVirtualHost *: 80 burada

VirtualHost *: 80 ve burada (iki kez)

  1. Apache'yi yeniden başlatın

Web sayfanıza girmek için şunu yazın: http: // localhost: 81 / index.html


Bunu tavsiye
edeceğim

5
  1. Windows+ Tuşuna basın Rve yazın regedit.

  2. Git

     HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
    

    Değerini Start4 olarak değiştirin, yani devre dışı bırakılır.

  3. Bilgisayarını yeniden başlat.


1
Windows 10 "Kasım Yükseltmesi" sorunuma neden oldu - tümü daha önce Win 10'un eski sürümünde çalışıyordu. W3svc veya Skype çalıştırmadım. Bu çözüm hile yaptı! Teşekkürler @Do Nhu Vy!
Jim M

5

Bu sorunu benimkiyle de düzelttim, ancak birkaç şeyi değiştirmek zorunda kaldım. Windows 10 makinemde C # ve Visual Studio geliştirme ortamımı korumamı istiyorum, bu nedenle herhangi bir hizmetle uğraşmak istemedim. Tek yapmam gereken XAMPP'nin en son sürümünü indirmek ve 80 ve 443 için dinleme bağlantı noktalarını değiştirmekti. Bunlar iki dosyada bulunuyordu:

C:\xampp\apache\conf\httpd.conf

Listen 122
ServerName localhost:122

C:\xampp\apache\conf\extra\httpd-ssl.conf

Listen 444

Yukarıdakileri bağlantı noktası 80'den 122'ye ve 443'ten 444'e değiştirmek, Apache'nin sayfaları çalıştırmasına ve hizmet etmesine izin verirken ASP.NET geliştirmem için diğer her şeyi aynı tutmamı sağladı . Umarım bu dışarıdaki birine yardımcı olur. Sonunda bu çok basit bir düzeltme.

Tarayıcınızı şuraya yönlendirin: http://localhost:122


Bunun en kolay ve en basit yol olduğunu düşünüyorum. Çok teşekkür ederim!
Diptangsu Goswami

+1 çünkü .NET Hizmetlerini kapatmak kesinlikle benim için bir seçenek değil. Elbette IIS ve Apache'yi aynı anda çalıştırmak istiyorum!
Alan

4

Bende de aynı sorun var ama önceki çözümler bizi kesin çözümü bulmak yerine limanı değiştirmeye götürüyor. Basit HTTP ve HTTPS Protokollerinin bağlantı noktalarını araştırdım ve buldum.

Halihazırda başka bir uygulama çalışıyorsa, yerel makinedeki HTTP veya HTTPS bağlantı noktaları, bu sorunu açıkça, zaten kullanımda olan ve meşgul durumda olan bağlantı noktaları nedeniyle alacağız. .

Bu yüzden port numarasını değiştirdikten sonra çalışıyordu. Ancak XAMPP sunucusundaki portu değiştirmek yerine aşağıdaki yöntemleri kullandım ve benim için çalışıyor.

İşte bu düzeltme sırasında attığım aşağıdaki adım.

  1. XAMPP Sunucu uygulamasında aldığım hata.

    XAMPP Sunucu Hatası

  2. Üst köşede Netstat adlı bir düğme var . Sistemdeki çalışan bağlantı noktalarını aramak için çok kullanışlıdır.

    Netstat düğmesi

  3. Bu, halihazırda çalışan ve 443 numaralı bağlantı noktasını kullanan bir uygulama bulduğum Netstat uygulamasıdır. Benim durumumda, vmware-hostd.exe idi . Sizin farklı bir uygulama olabilir. Bağlantı noktası 80 (HTTP) veya bağlantı noktası 443 (HTTPS) aramayı deneyin.

    Netstat uygulaması açıldı

  4. Az önce Windows Görev Yöneticisini açtım, vmware-hostd.exe uygulamasını seçtim ve İşlemi Sonlandır düğmesini kullanarak işlemi sonlandırdım . 443 numaralı bağlantı noktasında kullanılan işlemi öldürdüm. Şu anda bu uygulamaya ihtiyaç yoktu.

    Görev yöneticisini aç ve o uygulamayı kapat

  5. Uygulamayı Windows Görev Yöneticisi'nde sonlandırdıktan sonra, Apache şu anda kullanılabilir. İşte kanıtı.

    Apache çalışıyor


NOT: * HTTP veya HTTP kullanan herhangi bir uygulama bulursanız HTTPS bağlantı noktalarını bağlantı noktası 80 veya bağlantı noktası 443 anlamına gelir ve uygulama önemli değildir veya hayati önem taşımazsa, yalnızca o uygulamanın işlemini sonlandırın.

Aksi takdirde bu adımları izlemeye gerek yoktur. Daha sonra, önceki yanıtlarda belirtildiği gibi XAMPP uygulamanızın bağlantı noktasını değiştirmeyi düşünmeniz gerekir.


4

Buradaki cevaplarda listelenen her şeyi denedim ama hiçbiri işe yaramadı.

Sonra tek yaptığım, XAMPP'yi yönetici haklarıyla yeniden başlatmak oldu:

Başlat menüsü - XAMPP'ye sağ tıklayın - yönetici olarak çalıştır'ı seçin

İşe yaradı. Bu kadar basit.

IIS hizmetlerini kaldırdım, WWW hizmetlerini durdurdum, bağlantı noktalarını tekrar 80 olarak değiştirdim, tüm apache ve mysql bağlantılarını Windows 10 güvenlik duvarından engelledim, ancak evet hala çalışıyor!


3

Görünüşe göre birçok seçenek var. Cevap, Windows kurulumunuza bağlıdır. İşte yeni bir Windows 10 yüklemesinde aynı sorunu yaşarken yaşadığım deneyim ve sorunu aşağıdaki adımla düzeltin:

  1. Visual C ++ Yeniden Dağıtılabilir'i Yükleyin
  2. XAMPP'yi açın ve Apache hizmetinde yapılandırmayı seçin
  3. 80 numaralı bağlantı noktasını 9000 veya 81 olarak veya satırdaki httpd.conf dosyasında istediğinizi değiştirinListen 80
  4. Httpd-ssl.conf üzerindeki bağlantı noktasını değiştirin ve şu şekilde değiştirin Listen 443:Listen 441
  5. XAMPP'yi yeniden başlatın ve Apache hizmetini başlatın. Benim için çalışıyor.

Not : XAMPP 5.6.15 sürümünü ve XAMPP Kontrol Paneli 3.2.2 sürümünü kullanıyorum.


2
İyi yakalama - http ve https bağlantı noktalarının çakışmamasını
sağlayın

2

Etrafta oynadıktan sonra, gerçekten yapmanız gereken tek şey httpd.conf dosyasındaki iki satırı değiştirmek :

Değişim "Listen 80" için "122 Listen" (veya başka istediğiniz bir şey)

ve

"SunucuAdı Localhost: 80" ila "Localhost: 122" (veya yukarıda değiştirdiğiniz bağlantı noktası)

O zaman hepsi ateşlenmeli: P


1
  • Başlat menüsüne gidin ve Windows özelliklerini aç veya kapat yazın
  • İşareti kaldır İnternet Bilgi Hizmetleri'nin
  • Basın OK

1

Benim durumumda, IIS'yi kaldırmak basit bir durumdu çünkü Windows 10 önceden yüklenmiş IIS (İnternet Bilgi Hizmeti) ile birlikte geliyor - bu XAMPP ile çakışıyor çünkü bu iki sunucu da 80 numaralı bağlantı noktasını kullanmaya çalışıyor. IIS'yi kullanmak istemiyorsanız ve XAMPP'yi kullanmaya devam et

  1. Windows 10'da çalıştır / aramaya git
  2. 'İsteğe bağlı özellikleri' arayın
  3. Bu listede Internet Information Service (IIS) işaretini kaldırın.

Ardından yeniden başlatın .



1

Geniş Dünya Web Yayıncılığı hizmeti benim durumumda tek sorumlu değildi.

IIS'yi kurdum, bu yüzden tüm HTTP hizmetini durdurmam gerekti.

CMD'de (yönetici olarak) yürüttüğüm komutlar:

net stop W3SVC
net stop http

1

SQL Server kurduysanız , bazı hizmetleri XAMPP'nin ihtiyaç duyduğu bağlantı noktasını engelleyebilir. Sorunumu SQL Server Raporlama Hizmetlerini devre dışı bırakarak çözdüm ve şimdi Apache sorunsuz bir şekilde başlıyor.

Sadece açın, services.mscaşağı kaydırın ve SQL Server Raporlama Hizmetlerini bulun . Üzerine sağ tıklayın ve tıklayın Stop.


0

Aslında, varsayılan olarak IIS (Microsoft, .NET, vb.) Yüklenir.

  • Kontrol Paneline git
  • Windows özelliklerini açın veya kapatın ...
  • (IIS) İnternet Bilgi Hizmetleri altında (WWWS) dünya çapında web hizmetlerinin işaretini kaldırın.
  • Tamam'ı tıklayın.

Bu kalıcı bir çözüm olabilir. :)


0

Bu tavsiye harikaydı. Aynı sorunu yaşadım, ancak çözümüm farklıydı, çünkü o kadar aptaldım ki, XAMPP'nin bulunduğu dizini yeniden adlandırdım ve çok sayıda başka program yüklediğim için yeniden adlandıramadım.

Benim durumumda C: \ Programs \ Xampp orijinal dizini vardı ve C: \ PROGRAMS_ \ Xampp olarak yeniden adlandırıldı ve bu hataydı.

Çözüm, C: \ Programları üzerindeki tüm başvuruları bulmak ve bunları XAMPP dizininde C: \ PROGRAMS_ olarak yeniden adlandırmaktı , çünkü kurulum sırasında herhangi bir nedenle göreceli değil mutlak yollar yazar. Tabii ki, kayıt defterinde de bazı referanslar var.


Bu çok özel bir durum gibi görünüyor ve sorunun senaryosuna uygun görünmüyor.
dakab

Evet, katılıyorum, ancak birisine yardımcı olabileceğini düşünüyorum, çünkü aynı durumla karşı karşıyaydım (taze windodw 10 vardı) ve hata aynıydı, bu yüzden belki bu tam olarak aynı senaryo değildir, sanırım birisi bunu yararlı bulabilir .
Mayk

0

Bu sadece 80 numaralı bağlantı noktasını Apache hizmetiniz için kullanılabilir hale getirme meselesidir. Sorunu çözme şeklim şuydu:

  1. Windows 10'da, başlat düğmesine sağ tıklayın ve Çalıştır'ı seçin.
  2. Tip services.msc ve tıklayınOK
  3. Dünya çapında web yayınlama hizmetini bulun ve sağ tıklayın
  4. Özellikleri seçin
  5. Değiştir Başlangıç türü değerini Otomatik (Gecikmeli Başlatma)
  6. Bilgisayarı yeniden başlatın.

İşte aldın. Her şey normale döndü.


0

Bu benim için basitti!

XAMPP Kontrol Panelini yönetici olarak çalıştırmayı deneyin.


0

Yukarıdaki tüm çözümleri denedim. Ama hiçbir şekilde çalışmıyordu.

Son olarak, XAMPP'yi kaldırdım ve tekrar kurdum . Sonra benim için çalıştı.

Artık sunucuyu herhangi bir bağlantı noktasında (80 dahil) çalıştırabiliyorum.


0

Adımlar:

  • XAMMP Kontrol Panelini açın
  • Apache Config'i açın ve ardından Apache - xammp- yapılandırma dosyasını seçin
  • "Port 443" arayın ve sonra başka bir portla değiştirin, diyelim ki 4433
  • Ardından yeniden başlatın.

0

PHP kurulumunuzun çalışıp çalışmadığını kontrol edin.

Apache'nin yapılandırmasında hangi php.ini dosyasını çalıştırdığınızı kontrol edin ve php.exe'yi çalıştırmak için kullanın ...


0

Windows'u Sürüm 1903'e (İS Derlemesi: 18362.239) güncellemiş veya kullanıcı şifrelerini değiştirmiş olabilirsiniz. Tüm liman çatışmalarını ortadan kaldırmış olmasına rağmen , OP tarafından açıklanan mesajları bu yazının en başında almaya devam ettim.

Sonunda XAMPP'yi 7.3.7'ye yükselterek iyileştirdim. (Yeniden yüklemeye zorlandığında, aynı zamanda yükseltme de yapabilirsiniz!)

Ancak, 'kök' kullanıcı şifresini değiştirmeye tekrar gittiğimde sorun yeniden ortaya çıktı.

Konsol hata mesajları, table mysql.user dosyasının bozuk olduğu gerçeğini maskeliyordu .

Mysql_error.log dosyasını kontrol edin . Önemli hata görüyorsanız : Ayrıcalık tabloları açılamıyor ve kilitlenemiyor: 'kullanıcı' tablosu için dizin bozuk; onarmayı deneyin ardından bir göz, bu .



0

görüntü açıklamasını buraya girin

Sisteminizde bulunan bağlantı noktası numarasını aşağıdaki yolları kullanarak değiştirin

1. Önce Apache “httpd.conf” dosyasını açın:

#Listen 12.34.56.78:80
Listen 80
ServerName localhost:80

-e

#Listen 12.34.56.78:8080
Listen 8080
ServerName localhost:8080

2. httpd-ssl.conf'u açın:

Listen 443
<VirtualHost _default_:443>

-e

Listen 441
<VirtualHost _default_:441>

3. Numarayı takip edin. Şimdi Apache'yi "Başlatın" ve her şey yolunda giderse Apache sunucunuz başlamalıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.