Sửa lỗi Error: Apache shutdown unexpectedly trên XAMPP

Cập nhật lần cuối vào

Quá trình sử dụng XAMPP có thể sẽ phát sinh ra nhiều lỗi, bài viết này mình sẽ hướng dẫn cho bạn cách khắc phục tình trạng XAMPP không khởi động Apache và MySQL được, với thông báo Error: Apache shutdown unexpectedly hoặc Error: MySQL shutdown unexpectedly.

Bảng điều khiển XAMPP đang hoạt động

Nếu máy tính của bạn được cài mới hoàn toàn, bạn cài XAMPP phiên bản mới, không phải dùng lại các phiên bản đã cài đặt trước đó thì có thể quá trình làm việc của bạn sẽ không phải dính bất kỳ lỗi nào. Nhưng đối với các bạn đã từng cài XAMPP, rồi sau đó cài lại hệ điều hành nhưng vẫn muốn giữ lại phiên bản XAMPP đã cài đặt trước đó, hoặc do một lỗi nào đó mà bạn quyết định cài lại XAMPP vài lần thì có thể bạn sẽ không khởi động được Apache và MySQL.

Ngoài 2 thông báo lỗi như bên trên, nghĩa là sau khi bạn nhấn chuột vào nút Start trên bảng điều khiển, trạng thái của Apache hoặc MySQL sẽ chuyển từ đang tắt sang hoạt động (nền màu xanh lá mạ) sau đó lại chuyển về màu như bình thường lúc đầu. Bạn cũng có thể gặp lỗi đứng màn hình logs với thông báo Attempting to start Apache service hoặc Attempting to start MySQL service. Nói vậy để bạn thấy được có rất nhiều thông báo lỗi khác nhau, nhưng kết quả sau cùng là bạn không thể nào bật được localhost.

Xem thêm: Cài đặt localhost để học WordPress

Nguyên nhân của lỗi không khởi động được localhost thông thường là do trùng port, cổng mặc định của giao thức HTTP là 80, cổng mặc định của giao thức HTTPS là 443. Bạn có thể xem thêm danh sách các cổng TCP/UDP trên trang chủ của Wikipedia.

Đầu tiên, để khắc phục được các lỗi khi khởi động XAMPP, bạn chỉ cần tắt bảng điều khiển hiện tại đi, mở lại theo kiểu chọn chuột phải và nhấn Run as administrator. Tích chọn vào các ô có dấu x màu đỏ để cài đặt dịch vụ. Bạn vào thư mục cài đặt của XAMPP, tìm tới tập tin setup_xampp.bat và mở tập tin này lên.

Nếu bạn mở tập tin đó mà kết quả kiểm tra là [XAMPP]: Test for the php.exe successfully passed. Good! Bên dưới là dòng Sorry, but … nothing to do! thì bạn không cần phải làm gì cả, vì mọi thứ đã được cấu hình đúng. Ngược lại, bạn sẽ làm theo hướng dẫn như nội dung trong màn hình đưa ra.

Sau khi áp dụng xong biện pháp bên trên, bạn thử nhấn vào nút Start của dịch vụ Apache và MySQL xem đã khởi động lại được hay chưa. Nếu vẫn chưa khởi động được thì bạn tiếp tục dùng các phương pháp bên dưới.

Bạn mở cmd lên và chạy lệnh netstat -oan để xem danh sách các ứng dụng đang dùng port 80 và 443, sau khi đã xác định xong mã (PID) của ứng dụng, bạn tiếp tục mở Task Manager lên, nhấn vào tab Details, tìm các phần mềm với PID như trên và tắt nó đi, sau đó bạn thử khởi động lại XAMPP lần nữa.

Nếu vẫn chưa được, bạn thử chạy lệnh net stop http trên cmd, sau đó mở lại các dịch vụ của XAMPP một lần nữa. Thông thường, mọi người khi làm tới bước này đều mở Apache và MySQL lên thành công. Nếu bạn vẫn chưa làm được thì hãy thử lại bằng cách xóa bỏ toàn bộ thư mục XAMPP, xóa bỏ dịch vụ Apache và MySQL sau đó cài lại XAMPP từ đầu. Chúc các bạn thành công.