XAMPP, Apache - Lỗi: Apache tắt máy đột ngột


345

Tôi vừa cài đặt lại XAMPP và khi tôi cố gắng khởi động máy chủ Apache của mình trong Bảng điều khiển XAMPP, bây giờ tôi gặp các lỗi sau:

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

Tôi giải quyết điều này như thế nào?


Tôi bắt đầu gặp vấn đề này sau khi cài đặt phiên bản XAMPP mới. Tôi nghĩ vấn đề là về các cổng, vì hầu hết mọi bài đăng đều nói về chúng, nhưng không phải vậy. Khi tôi kiểm tra error.log, tôi thấy PHP Warning: 'vcruntime140.dll' 14.0 is not compatible with this PHP buildcái nào dẫn tôi đến câu trả lời này . Cài đặt yêu cầu phân phối lại giải quyết vấn đề.
akinuri

Câu trả lời:


415

Mở skype.

Công cụ -> Tùy chọn -> Nâng cao -> Kết nối.

Bỏ chọn hộp kiểm " Sử dụng cổng 80 và 443 cho các lựa chọn thay thế cho các kết nối đến "

Đăng xuất và Đóng tất cả các cửa sổ Skype. Hãy thử khởi động lại Apache của bạn.


7
nếu nó không hoạt động cho bất cứ ai cố gắng kiểm tra nhật ký lỗi. hoặc nếu bạn đang sử dụng vmware, hãy truy cập EDIT> ƯU ĐÃI> CHIA SẺ VMS> CHIA SẺ TUYỆT VỜI và thay đổi cổng từ 443 sang bất kỳ cổng nào khác, ví dụ 8443 và lưu các thay đổi. khởi động lại xampp hoặc wamp
Faisal Naseer

5
Tôi đã thay đổi skype, vẫn lưu ý. Các giải pháp kết thúc lên được ( stackoverflow.com/questions/14548768/... setup_xampp.bat để làm mới các đường dẫn]
Timmah

21
Đây không phải là giải pháp chính xác vì cổng có thể bị chặn do bất kỳ ứng dụng nào, không chỉ Skype. Câu trả lời nâng cao thứ 2 có một giải pháp tốt hơn.
Rahul Kadukar

3
Đây là vấn đề phổ biến nhất mà mọi người phải đối mặt mặc dù đây không phải là vấn đề trong trường hợp của tôi. Vấn đề này cũng có thể phát sinh nếu bạn có các mục sai trong bất kỳ tệp nào httpd.conf và httpd-vhosts.conf. Trong trường hợp của tôi, tôi đã có một máy chủ ảo được tạo để trỏ đến vị trí tệp trên ổ cứng ngoài và trong khi tôi đang chạy xampp thì ổ cứng ngoài của tôi không được kết nối. Vì vậy, tôi đã nhận xét rằng mã máy chủ ảo cho đến khi tôi không sử dụng ổ cứng ngoài và khởi động lại xampp để khắc phục sự cố.
Vine Sajwan

2
Không phải lúc nào cũng là skype. Vấn đề của tôi là với vmware đang sử dụng cổng 443. Nếu đó là trường hợp bạn không phải thay đổi cổng 80 config.
Moradnejad

760

Khi tôi đang làm việc trong môi trường doanh nghiệp nơi các nhà phát triển phải đối mặt với các vấn đề về tường lửa, không có câu trả lời nào khác giải quyết được vấn đề của tôi.

Vì cổng không được Skype sử dụng, nhưng bởi một số ứng dụng nội bộ khác, tôi đã làm theo các bước dưới đây để giải quyết vấn đề:

Bước 1 - Từ Bảng điều khiển XAMPP, bên dưới Apache, nhấp vào nút Cấu hình và chọn Apache (httpd.conf).

Trong tệp httpd.conf , bằng cách nào đó tôi đã tìm thấy một dòng có nội dung:

Listen 80

Và thay đổi 80 thành bất kỳ số / cổng nào bạn muốn. Trong kịch bản của tôi, tôi đang sử dụng cổng 8080.

Listen 8080

Vẫn từ tệp httpd.conf , tôi tìm thấy một dòng khác có nội dung:

ServerName localhost:80

Thay đổi 80 thành 8080.

ServerName localhost:8080

Bước 2 - Từ Bảng điều khiển XAMPP, bên dưới Apache, nhấp lại vào nút Cấu hình, nhưng lần này chọn Apache ( httpd-ssl.conf ). Trong tệp httpd-ssl.conf , tìm dòng có nội dung

Listen 443

Và thay đổi 443 thành bất kỳ số / cổng nào bạn muốn. Tôi sẽ sử dụng 4433 làm số cổng mới.

Listen 4433

Vẫn từ tệp httpd-ssl.conf , hãy tìm một dòng khác nói

<VirtualHost _default_:443>

ServerName localhost:443

Và thay đổi 443 thành 4433 .

<VirtualHost _default_:4433>

ServerName localhost:4433

Hãy nhớ lưu các tệp httpd.confhttpd-ssl.conf sau khi thực hiện một số thay đổi. Sau đó khởi động lại dịch vụ Apache.


Câu trả lời được cung cấp bởi @ Min2 hoạt động trong mọi trường hợp, nhưng đôi khi điều này không thành công vì bạn cần kiểm tra xem có dịch vụ nào có tên "Dịch vụ HTTP Apache" đang chạy trong Trình quản lý tác vụ không. Kết thúc dịch vụ này và thực hiện các chức năng được xác định ở trên, bây giờ bạn sẽ thấy Apache hoạt động.
Aadil

4
Tôi đã nâng cấp lên Windows 10 và XAMPP không hoạt động. Tôi đã làm theo giải pháp của bạn và nó hoạt động tốt.
fuddin

6
Đây là bản sửa lỗi cho lỗi windows 10. Cảm ơn rất nhiều !
Javed Ali

3
Làm việc cho tôi. Đây phải là giải pháp được chấp nhận; giải pháp Skype rất hạn chế.
ptrcao

1
Tôi đã thực hiện các thay đổi cho các cổng 80 và 443 nhưng vẫn hiển thị lỗi không có skype trong hệ thống của tôi
Bhargav Venkatesh

96

Một điều bạn có thể làm là dừng các dịch vụ trên cổng 80 bằng cách phát hành

net stop http

trong một cmd. Bạn sẽ được hỏi nếu bạn chắc chắn muốn dừng các dịch vụ đó. Tôi phát hiện ra rằng tôi có một vài dịch vụ tôi không sử dụng và vô hiệu hóa chúng.

Để xem ai khác đang sử dụng cổng 80, gõ vào cmd

netstat -abno

Tôi giả sử bạn muốn chạy Apache trên cổng 80. Nếu đây là trường hợp và bạn muốn giữ các dịch vụ xung đột, bạn sẽ cần liên kết chúng với một cổng mới.

Nếu sự cố không phải là một cổng bận, bạn cũng có thể thử các cách sau: chọn "hiển thị thông tin gỡ lỗi" trong bảng cấu hình XAMPP. Khi bắt đầu Apache, bạn sẽ được hiển thị một cái gì đó như "Thực thi" c: \ xampp \ apache \ bin \ httpd.exe ". Nếu bạn chạy nó

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

trong một cmd, bạn sẽ nhận được thêm một số thông tin (ví dụ tôi đã từng gặp một số vấn đề với tệp httpd.conf của tôi).

Liên quan: Làm cách nào để giải phóng cổng 80 của tôi trên Windows localhost? Apache sẽ không chạy trong xampp


12
+1 cho httpd.exe. Nếu bạn đang thiếu các mô-đun, hãy đảm bảo rằng phần mềm chống vi-rút của bạn đã không xóa chúng (đặc biệt là nếu bạn chạy Kasperky).
thomas88wp

1
Tôi đã có cùng một vấn đề và giải quyết nó bằng cách đảm bảo rằng mỗi thư mục được chỉ định trong /apache/conf/extras/httpd-bhosts.conf là các đường dẫn thực tế.
Matthew

8
cảm ơn người đàn ông đang chạy c: \ xampp \ apache \ bin \ httpd.exe trên cmd đã đưa ra lỗi chính xác và có thể sửa nó
Khan Shahrukh

Wordk này trên máy chủ 2019. http dừng http thực hiện thủ thuật nó dừng tất cả các dịch vụ sử dụng cổng đó. Dịch vụ này tôi mô phỏng để khởi động bằng tay.
Henry

Nếu bạn đang sử dụng Windows 7, tốt nhất hãy xem câu trả lời của Kunal cho biết cách dừng IIS. Về thủ thuật này, net stop httpđã hoạt động, nhưng có tác dụng phụ là làm cho máy in không còn được liệt kê khi cố in một cái gì đó (và cho đến khi khởi động lại máy tính).
OuzoPower

79

Trong Bảng điều khiển XAMPP V3.2.1, nhấp vào nút "NetStat" ở trên cùng bên phải. Đảm bảo rằng cổng 80 không được sử dụng bởi bất kỳ chương trình nào khác. Sau đó bấm vào "Shell" Ngay bên dưới nó. Ban hành lệnh này "Gõ ap rồi TAB hai lần"

Apache_Start.bat

Bạn thực sự sẽ thấy lỗi chính xác tại sao Apache thất bại. Nó hầu như có thể là vấn đề cấu hình máy chủ ảo hoặc có thể là một cái gì đó khác. Nó sẽ hiển thị số dòng mà lỗi xảy ra. Chỉ cần sửa lỗi đó. Lưu ý rằng trong RootDocument, dấu \ cũng có thể là nguồn gây ra lỗi. Xóa mọi dấu vết "\".


7
Điều đó chỉ giúp tôi có thời gian lớn - nó nói với tôi rằng có một lỗi đánh máy - sau khi dành hàng giờ cố gắng để tìm ra điều gì sai. Cảm ơn rất nhiều @hmd
Sebastian Sulinski

Cảm ơn bạn, tôi đã thay đổi tên thư mục xampp và điều này giúp tôi tìm ra lỗi.
Peter Nguyễn

10
Đây phải là câu trả lời hàng đầu, bởi vì nó hoạt động cho bất kỳ lỗi nào có thể xảy ra với XAMPP!
dùng11153

Điều này cũng nên được trả lời đúng. Tôi đã có một lỗi ngớ ngẩn trong vhost và điều đó đã gây ra lỗi .... cảm ơn
Mikel

Super G ... là câu trả lời hàng đầu, bởi vì nó hoạt động cho mọi lỗi có thể xảy ra với XAMPP !!!
OpenWebWar

37

Thực hiện theo các bước sau:

  1. Mở bảng điều khiển XAMPP của bạn sau đó nhấp vào "Cấu hình" của nó
  2. Chọn "Apache (httpd.conf)" và tìm mã này bên dưới và thay đổi mã này thành mã này:

    # Thay đổi điều này để Nghe trên các địa chỉ IP cụ thể như được hiển thị bên dưới

    # để ngăn Apache tham gia vào tất cả các địa chỉ IP bị ràng buộc.

    #Listen 0.0.0.0:80

    #Listen [::]: 80

    Listen 80

    # Hỗ trợ đối tượng chia sẻ động (DSO)

    1. Lưu nó ( Ctrl+ S)
    2. Sau đó, quay trở lại bảng điều khiển XAMPP và nhấp lại vào cấu hình của nó.
    3. Chọn "Apache (httpd-ssl.conf)", tìm mã này bên dưới và thay đổi lại:

    # Lưu ý: Các cấu hình sử dụng IPv6 nhưng không phải địa chỉ được ánh xạ IPv4 cần hai

    # Nghe chỉ thị: "Nghe [::]: 443" và "Nghe 0.0.0.0:443"

    #

    #Listen 0.0.0.0:443

    #Listen [::]: 443

    Listen 443

    1. Lưu nó ( Ctrl+ S)
    2. Sau đó, nhấp vào "cấu hình" (lưu ý: phía trên netstat) và nhấp vào "cài đặt dịch vụ và cổng".
    3. Thay đổi "Cổng chính" thành 8080 và "Cổng SSL" thành 4433, sau đó lưu lại.
    4. Cuối cùng, đi đến "bảng điều khiển" -> "Chương trình & Tính năng" -> "Bật hoặc tắt Windows".
    5. Bỏ chọn "Dịch vụ thông tin Internet" của bạn, rồi bấm OK.

Chỉ cần đợi nó và máy tính / máy tính xách tay của bạn sẽ tự động khởi động lại và thử mở bảng điều khiển XAMPP của bạn một lần nữa, sau đó khởi động Apache của bạn.


11
Coi chừng. Nếu bạn đã cài đặt VMWare Workstation (10.0), tùy chọn chia sẻ VM là nghe cổng 443. Điều đó ngăn máy chủ Apache khởi động (xampp). Xem Chỉnh sửa> Tùy chọn> Chia sẻ VM '
toesslab

3
Nghe 80 -> Nghe 81 (gần dòng 58) ServerName localhost: 80 -> ServerName localhost: 81 (gần dòng 218)
Noah Martin

2
Đã làm cho tôi. Tôi đã cố gắng thay đổi cổng Apache bằng XAMPP 'GUI GUI' và không gặp may. Thay đổi bằng tay và tất cả đều hoạt động. Một bài học khắc nghiệt khác cho sự lười biếng.
Matt Carr

Cuối cùng là giải pháp cho tôi. Tôi đã thay đổi điều skype, nhưng nó không giúp được gì. Cảm ơn bạn! (: Vấn đề duy nhất là điểm 3 & 4 trong phần cuối của mô tả của bạn.
codepleb

Làm việc cho tôi, tôi đang sử dụng windows7 mà không cần VMware. + 1
dùng3437460

25

Vấn đề của tôi là trong httpd.conf DocumentRoot, <Directory>các mục và các mục đã trỏ đến các thư mục không tồn tại.

Ví dụ: httpd.conf 'gốc' có các mục sau:

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

Nếu bạn đã cài đặt trong C: \ xampp thì bạn cần thay đổi các mục đó cho phù hợp, tức là

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

Tôi đã đổi tên các thư mục và đó là nguyên nhân khiến thư mục http không hợp lệ và không cho phép XAMPP bắt đầu. Tên thư mục chanelling bên phải đã sửa lỗi này :)
VSB

1
+1, tôi hoàn toàn quên rằng tôi đã cấu trúc lại các thư mục của mình =)
Morten Høgseth

Tôi cũng vậy - "... nhưng tôi không thay đổi gì cả! ..." ừ, ngoại trừ tên thư mục gốc - rất tiếc. ;)
CramerTV

2
không có gì ngoài một câu trả lời đơn giản nhắc nhở một trong những thành ngữ của chính mình đôi khi ..: D đã làm điều đó cho tôi, cảm ơn!
charlie carver

21

Nếu bạn đang sử dụng Windows 7. Tìm kiếm IIS trong tìm kiếm Windows (Nhấp vào biểu tượng Cửa sổ ở dưới cùng bên trái và nhập vào nơi ghi 'Chương trình tìm kiếm và tệp').

Mở IIS (Dịch vụ thông tin Internet) .

Ở phía bên phải trong bảng hành động. Bấm Dừng.

Lưu ý: Liên kết dừng bị mờ trong ảnh chụp màn hình. Khi tôi dừng nó lại. Ảnh chụp màn hình IIS Giải quyết vấn đề!


2
Trên Windows 10 không thể tìm thấy IIS để thực thi, sau đó tôi đã gỡ cài đặt IIS từ Control Panel > Programs > Programs and Features > Windows Componentsđó cuối cùng đã giải quyết nó.
thang cuốn

@escalator tốt, tôi đã đề cập rõ ràng rằng "Nếu bạn đang sử dụng Windows 7".
Kunal

Cảm ơn. Làm việc như một cơ duyên và giải quyết vấn đề cho tôi sau khi đã thử không thành công một số thủ thuật được đề cập khác. Các net stop httptừ một dấu nhắc lệnh nâng lên cũng đang làm việc, nhưng có tác dụng phụ làm cho máy in không có.
OuzoPower

17

Tôi gặp vấn đề tương tự, và hóa ra tôi đã quên chạy setup_xampp.bat(phiên bản di động).


2
Sau khi chuyển thư mục xampp của tôi sang ổ đĩa khác ngoài c: \ apache không bắt đầu nữa. Giải pháp này đã làm việc cho tôi. Cảm ơn rất nhiều! :)
Pascal Cỏ ba lá

Tôi nghĩ rằng bước này là bắt buộc, khi chúng tôi tải xuống phần mềm Xampp dưới dạng lưu trữ zip và cố gắng khởi động máy chủ Apache.
shasi kanth 7/12/2015

Đây là câu trả lời cho phiên bản di động (trường hợp của tôi). Cảm ơn đã chỉ ra điều đó.
Sidney de Moraes

Nó cũng giải quyết vấn đề của tôi. Tôi không dùng phiên bản di động. Tôi đã tải xuống thiết lập cho xampp trên Windows 10. Sau khi cài đặt (đó là exe không phải là zip), tôi đã gặp sự cố được mô tả trong bài đăng đầu tiên. Sau khi tìm kiếm một giải pháp cho vấn đề này, tôi chạy setup_xampp.bat và bây giờ nó đang hoạt động.
quokka-web

Windows của tôi bị hỏng do tên ổ đĩa bị thay đổi và đường dẫn tệp tuyệt đối hoàn toàn lộn xộn. Tôi đã chạy setup_xampp.bat và mọi thứ đã được cấu hình lại đúng cách.
gegobyte

16

Điều này làm việc cho tôi ...

Nếu bạn đang sử dụng windows ...

Tìm kiếm 'cmd' trong thanh tìm kiếm của windows.

Nhập cái này:C:\xampp\apache\bin\httpd.exe

Tìm tập tin nào và dòng nào xảy ra lỗi.

Ví dụ, của tôi là trong tập tin dưới đây trên dòng 37.

httpd-multilang-errordoc.conf

Mở mã và sửa lỗi bằng cách xóa dòng hoặc sửa nó.

Làm xong! Tôi nên làm việc bây giờ.

:)


tuyệt quá! điều này thực sự giúp tôi, cảm ơn
Capensis

cảm ơn. nó đã làm việc có lỗi cú pháp trong tệp cấu hình vhost của tôi
Emtiaz Zahid

12

Dường như không ai trả lời về việc thực thi xampp_start.exe.

Tôi đã làm tất cả các câu trả lời trước đó nhưng nó không khắc phục được vấn đề của tôi. Tôi phát hiện ra rằng việc chạy xampp_start.exe sẽ cung cấp cho bạn thông tin chi tiết về vấn đề này.

Đây là những gì tôi thấy cuối cùng của tôi:

xampp_start

Như bạn có thể thấy tôi gặp vấn đề về đường dẫn hoặc xampp đang trỏ đến thư mục không tồn tại.


Đây là cứu người. đường dẫn tệp ssl và log của tôi không hợp lệ. Điều này đã giúp tôi sửa nó và nó hoạt động ngay bây giờ.
Ali Azhar

Câu trả lời tuyệt vời. Cứu lấy ngày của tôi
Raju

11

Khi tôi thấy rằng không có quá trình sử dụng cổng 80 bằng cách sử dụng các lệnh

netstat -abno | find ":80"

không có vấn đề gì trong quá trình sử dụng cổng 80.

Sau đó, tôi chạy lệnh (tính bằng cmd)

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

nó đã cho thấy một số lỗi trong cấu hình máy chủ ảo trong httpd-vhosts.conftệp được tôi chỉnh sửa gần đây để cài đặt trong môi trường PHP WordPress trong IDE Eclipse . Vì vậy, tôi đã xóa những dòng đó và Apache bắt đầu hoàn hảo.


2
Hoàn hảo! Tôi đã chỉ định thư mục sai cho các tệp nhật ký và do đó nó không bắt đầu. Khắc phục sự cố đó!
Hammad Khan

BẠN ĐÁNG TIN !!!! Tất cả các giải pháp trên không hiệu quả với tôi, khi tôi thử những gì bạn đã làm, nó đã cho tôi một lỗi khác về dòng SSLRequiredSSL trong httpd-xampp.conf mà sau đó tôi đã chèn # trước nó để vô hiệu hóa nó. Nhân tiện, tôi đã phải chạy lại C: \ xampp \ apache \ bin \ httpd.exe nhiều lần trong dòng lệnh sau mỗi lần sửa để tìm cho tôi một dòng khác có cùng lỗi.
alaswer

11

Điều đơn giản mà bạn có thể làm là kiểm tra xem Skype hoặc VMware đã được cài đặt trong máy của bạn hay chưa.

Skype sử dụng cổng 80 và 443 làm cổng bổ sung cho các kết nối đến. Để thay đổi số cổng trong Skype, hãy đi đến

Công cụ> Tùy chọn kết nối> Kết nối

trong cửa sổ Skype. Bây giờ thay đổi số cổng 80 mặc định thành một số khác.

VMware Workstation sử dụng cổng 443 để chia sẻ. Để thay đổi điều này, hãy mở VMware Workstation và goto

Chỉnh sửa> Tùy chọn> Vms được chia sẻ

  1. Nhấp vào "Thay đổi cài đặt" buton
  2. Sau đó bấm vào "Vô hiệu hóa chia sẻ"
  3. Sau đó thay đổi số cổng https đang được sử dụng (443)
  4. Sau đó, bạn có thể nhấp vào nút "Bật chia sẻ"

Đó là tất cả những gì bạn phải làm. Khởi động lại XAMPP và chạy máy chủ Apache.


Sau khi thực hiện thay đổi skype, apache vẫn chưa bắt đầu, vì vậy tôi đã thực hiện thay đổi VmWare đã đề cập và nó đã hoạt động.
Haris ur Rehman

9

Tôi đã có cùng một vấn đề đôi khi trở lại. Tôi đã có một máy tính xách tay cũ, trên đó hầu hết các cổng đều bị chặn hoặc bị trục trặc. Đây là cách tôi đã làm nó.

  1. Mở bảng điều khiển XAMPP.

  2. Nhấp vào Cấu hình

  3. Sau đó, đi vào tệp Apache httpd.conf . Mở nó bằng một trình soạn thảo văn bản.

  4. Tìm kiếm "80" (Do Ctrl+ Fvà tìm tất cả chúng. Thay thế nó bằng 8080 hoặc 4040 hoặc 4000 ).

  5. Lưu các tập tin. Và khởi động lại XAMPP.

Nó làm việc tốt cho tôi, và tôi hy vọng nó cũng giúp bạn.


6

Đối với tôi, dịch vụ xuất bản web trên toàn thế giới đã sử dụng cổng 80. Tôi đã giết điều này bằng cách chạy lệnh sau trên cmd:

net stop http

Sau đó, XAMPP chạy Apache mà không gặp vấn đề gì.


1
đã giải quyết vấn đề của tôi, nhưng bây giờ chúng tôi đã dừng một số dịch vụ, các dịch vụ đó ảnh hưởng đến mạng của tôi như thế nào?
Karavana

Tôi đã chạy dấu nhắc lệnh như quản trị viên và điều này làm việc. Nhưng câu hỏi của tôi là, các dịch vụ đã dừng sẽ không ảnh hưởng đến điện toán thông thường, và, làm thế nào tôi lại nhận được những dịch vụ đó bị dừng, hoạt động trở lại.
PANDEY AMRESH

@AMRESHPANDEY Tôi đã tìm thấy thứ gì đó có thể hữu ích trong trường hợp đó. Tôi đã không thử nếu nó hoạt động mặc dù. Vui lòng thêm nó dưới dạng câu trả lời nếu nó hoạt động: mikeplate.com/2011/11/06/ trên
Memet Olsen

5

Lỗi này xảy ra do cổng, được phân bổ cho Apache, được sử dụng bởi một chương trình khác. Để kiểm tra ứng dụng sử dụng cổng mà chúng tôi đã phân bổ cho Apache, có thể có ứng dụng này bằng cách nhấp vào,

Nút Netstat .

Trang chủ XAMPP

Đây là tệp Netstat,

Nhập mô tả hình ảnh ở đây

Lúc đầu, tôi đã phân bổ cổng 8080 cho Apache và gần đây tôi đã cài đặt Oracle DB.TNSLSNR.exe đã sử dụng cổng 8080.

Vì vậy, bằng cách xem tệp này, chúng ta có thể chọn một cổng không bị xung đột với các ứng dụng khác. Trong trường hợp của tôi, cổng 8060 không bị xung đột với bất kỳ ứng dụng nào. Bằng cách chọn chúng ta có thể thay đổi tệp httpd.conf (bảng điều khiển XAMPP -> Cấu hình ) như đã đề cập ở trên.


5
  1. tải về apamefriends xampp mới
  2. cài đặt nó
  3. xóa tất cả ứng dụng VPN
  4. mở thư mục XAMPP chạy setup_xampp.bat
  5. chạy xampp-control.exe

Tôi đã được theo dõi điểm 4, chạy setup_xampp.bat và bắt đầu dịch vụ (điểm 5), tất cả đều hoạt động tốt.
Devang Solanki

4

Trong trường hợp của tôi, vấn đề này là do nỗ lực tải xuống sản phẩm khác của bitnami, như WordPress . Điều đó phổ biến khi chúng tôi cài đặt WordPress qua XAMPP. Nó được đặt trong xampp/appthư mục có thể được truy cập từ trang chủ ứng dụng XAMPP.

Như một giải pháp, tôi đã xóa WordPress được cài đặt mặc định khỏi xamppthư mục và cài đặt thủ công WordPress trong htdocsthư mục của WordPress bằng cách tải xuống và trích xuất các tệp zip vào htdocthư mục. Bạn cũng cần khởi động lại XAMPP hoặc có thể hệ thống sau khi gỡ cài đặt / xóa WordPress mặc định . Tất cả là OK cho tôi bây giờ.


3
  1. Trước tiên hãy chắc chắn rằng \xamppthư mục của bạn nằm trong thư mục gốc! Điều này rất quan trọng vì đường dẫn là tương đối.

  2. Sau đó, hãy chắc chắn rằng bạn chạy xampp_control.exevới quyền quản trị.

  3. Sau đó thay đổi các tập tin dưới đây để tránh các vấn đề với cổng 80 bị chặn.

Trong \xampp\xampp-control.iniđó nên được đặt:

[ServicePorts]
Apache=8080
ApacheSSL=4433

Tìm \xampp\apache\conf\httpd.confvà thiết lập:

Listen 8080

ServerName localhost:8080

Tìm \xampp\apache\conf\extra\httpd-ssl.confvà thiết lập:

Listen 4433

<VirtualHost _default_:4433>

ServerName www.example.com:4433

Sau đó kết thúc tất cả các dịch vụ và khởi động lại xampp-control.exevới quyền quản trị. Nó nên chạy!


3

Tôi vừa gặp lỗi này trên xampp v3.2.2 [win 10 pro x64],

Lần đầu tiên tôi thử chạy lệnh "net stop http" trong cmd quản trị viên, nhưng nó không giải quyết được vấn đề, vì vậy tôi đã đi trước để thử lệnh "netstat -abno" và tôi phát hiện ra rằng cổng ssl (443) đã ở trong sử dụng bởi vmware.

Vì vậy, lời khuyên của tôi, đừng chỉ tìm kiếm những gì chặn cổng 80, cũng hãy tìm các chương trình tiềm năng bằng cách sử dụng cổng 443. bởi vì tôi thực sự không thích thay đổi số cổng mặc định của mình thành 8081 và 4433.

Vì vậy, đây là cách bạn có thể giải quyết vấn đề này ...

đầu tiên gõ lệnh sau

net stop http

sau đó cố gắng bắt đầu apache, nếu nó vẫn không hoạt động. gõ lệnh sau

netstat -abno

và bạn chắc chắn sẽ nhận được ứng dụng rắc rối đó sử dụng hết cổng quý giá của bạn.

sao chép pid và sau đó sử dụng lệnh sau

taskkill /f /pid PID

Trong đó PID là pid bạn đã sao chép.

Hy vọng điều này sẽ giúp được ai đó.


2

Điều này xảy ra do cổng 80 mặc định bị chặn cho Apache. Bạn cần thay đổi cổng hoặc làm cho cổng có thể truy cập được.

Chuyển đến tệp cấu hình Apache (httpd.conf) của bạn trong bản cài đặt Apache.

Tìm những dòng này:

#

Nghe 192.168.1.2:80

Nghe 80

#

Ở đây 192.168.1.2 là địa chỉ IP riêng của tôi. Thay đổi nó theo bạn.

Thay đổi như dưới đây

Nghe 192.168.1.2:8081

Nghe 8081

Bây giờ khi bạn truy cập localhost, bạn phải thêm cổng rõ ràng là http: // localhost: 8081 / ...


2

Một trong những nguyên nhân có thể là do bạn không chạy Bảng điều khiển XAMPP với tư cách quản trị viên.


2

Tôi đã giải quyết vấn đề bằng cách dừng dịch vụ "Dịch vụ đại lý triển khai web". Mở: Hệ thống -> Quản lý máy tính -> Dịch vụ -> Dịch vụ đại lý triển khai web . Dừng dịch vụ này và bắt đầu XAMPP hoạt động. Tôi nghĩ rằng đây là một dịch vụ của MS Webmatrix.

(Tiếng Đức: Systemsteuerung -> System und Sicherheit -> Verwaltung -> dienste -> Webbereitstellungs-Agent-dienst )


2

Tôi đã có thông báo lỗi chính xác giống như OP, nhưng vấn đề của tôi không được giải quyết bởi bất kỳ câu trả lời hiện có nào. Nhiều câu trả lời liên quan đến xung đột trên cổng 80, điều mà tôi biết là tôi không có, vì tôi đã có localhost phản hồi trên cổng 80 rất gần đây.

Hóa ra tôi đã vô tình thay đổi ServerRoot khi tôi có ý định thay đổi DocumentRoot (ngu ngốc, tôi biết), và mặc dù thư mục ServerRoot mới tồn tại, nó không chứa các tệp cấu hình và các công cụ apache khác cần thiết, khiến nó không khởi động được. Thông báo lỗi có thể giải quyết tình huống này bằng cách diễn đạt ' thiếu phụ thuộc '.

Trên hệ thống Windows của tôi, việc đặt ServerRoot trở lại C: / XAMPP / apache đã giải quyết vấn đề.


2

Máy chủ Apache theo mặc định chạy trên các cổng 80, 443. Vấn đề của bạn là một hoặc cả hai cổng đang bận. Thông thường Skype hoặc VMware Workstation sử dụng hai cổng này. Vì vậy, hãy chắc chắn rằng chúng không chạy. Cách tốt nhất để đảm bảo các cổng miễn phí trên windows là:

  • Nhấn vào nút cửa sổ.

  • Trong thanh tìm kiếm loại resmon , để mở trình giám sát tài nguyên resmon.exe .

  • Cổng nghe mở , điều này sẽ cho bạn thấy các cổng đã sử dụng đã mở.

  • Bây giờ bạn có thể thấy quá trình nào đang sử dụng cổng 80 và 443.

  • Sau đó, bạn có thể hủy quá trình từ CMD bằng cách sử dụng PID của nó (được hiển thị trong trình giám sát tài nguyên) hoặc trực tiếp từ Trình quản lý tác vụ.

  • Để tiêu diệt một quá trình từ CMD bằng cách sử dụng loại PID Taskkill /PID 26356 /F, trong đó 26356 là PID.


2

Giải pháp tốt nhất cho người dùng windows là:

  1. Mở netstat (từ XAMPP CONTROL PANEL)
  2. Tìm PID của quá trình sử dụng cổng 80.
  3. Mở CMD với hành chính.
  4. Chạy taskkill /pid PID(thay vì sử dụng PID pid u được tìm thấy từ netstat)
    Heyy tận hưởng u Xong .....

2

Được rồi, không có cổng 80, không đổ lỗi cho Skype! Vấn đề của tôi thực sự khá đơn giản (& ngớ ngẩn), tôi đã có thêm dấu gạch chéo ngược (\) (trên Windows) sau đường dẫn tôi đã chỉ định cho lệnh DocumentRoot, vì vậy tôi đã thực hiện một thay đổi như thế này và vấn đề đã biến mất như một món súp vịt .

Index.php của tôi nằm trong đường dẫn "D: \ website \ dummy" và httpd.conf của tôi giống như thế này:

<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>

Vì vậy, chỉ cần thay đổi hai dòng như thế này:

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

... và mọi thứ đều ổn bây giờ. Để ngăn chặn những sai lầm như vậy trong tương lai, hãy luôn sao chép đường dẫn của bất kỳ thư mục nào bạn muốn tham khảo thay vì tự gõ nó.


1

Đối với tôi, vấn đề này bắt đầu khi tôi lưu trữ kết nối VPN trên máy tính Windows 8 của mình.

Chỉ cần xóa kết nối khỏi "Bảng điều khiển \ Mạng và Internet \ Kết nối mạng" đã giải quyết được vấn đề.


1

Lưu ý rằng bất cứ khi nào bạn thay đổi các cổng mặc định, trình duyệt của bạn sẽ không biết về điều đó. 80443dường như là tiêu chuẩn theo một cách nào đó, vì vậy, ví dụ, nếu bạn đổi 80thành 8080, bạn sẽ phải truy cập trang web của mình theo cách này:

localhost:8080/path_to_your_website.php



1

Giải pháp tốt nhất

mở bảng điều khiển XAMPP, nhấp vào cấu hình cho Apache, sau đó nhấp vào Apache (httpd.config) .now trong trình soạn thảo văn bản. ctrl + f -> tìm "Nghe 80" và thay thế bằng "Nghe 8079" trong phần trích dẫn :) nhưng bây giờ bạn phải sử dụng nó như thế này http: // localhost: 8079 /

PS, tôi đã cố gắng thay đổi cài đặt cổng cho skype, dừng Dịch vụ đại lý triển khai web mà tôi không thể tìm thấy trong windows 10, cmd -> net stop http và các phương thức khác nhưng không có gì hoạt động trừ việc này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.