Hoàn toàn bất ngờ, tôi không thể khởi động lại apache trên máy chủ web CentOS 6.8 của mình:
# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:7080
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:7080
no listening sockets available, shutting down
Unable to open logs
[FAILED]
Tôi đã thử một loạt những thứ tôi đọc trực tuyến, bao gồm loại bỏ các tập tin khóa.
Tôi quyết định thử khởi động lại máy chủ. Sau khi khởi động lại, cố gắng tải bất kỳ trang web được lưu trữ nào sẽ dẫn đến "502 Cổng xấu".
# service httpd status
httpd is stopped
# service httpd start
Starting httpd: [ OK ]
# service httpd status
httpd dead but subsys locked
Mặc dù tình trạng "chết", bây giờ tôi có thể tải các trang web!
Đôi khi dịch vụ khởi động lại httpd hoạt động ...
# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
Nhưng lần khác, nó dẫn đến lỗi đầu tiên ở trên. Trong trường hợp nào tôi có thể sửa nó bằng:
# killall -9 httpd
# service httpd start
Vì vậy, tôi có thể làm việc xung quanh nó, nhưng tôi thực sự tò mò về những gì đang xảy ra và tự hỏi liệu tôi có nên quan tâm.
tcp 0 0 :::7080 :::* LISTEN 0 5626801 3829/httpd
netstat -tulpen
và tìm bất cứ thứ gì nghe trên cổng 7080. Bạn chỉ chạy apache, phải không? Cổng 7080 không phải là một sai lầm?