AH00015: Không thể mở nhật ký Hành động 'bắt đầu' không thành công. trong Ubuntu 14.04


10

Tôi đang thử cài đặt apache2, tôi gặp phải vấn đề này. Hãy cho tôi một số giải pháp

Khởi động lại máy chủ web apache2 báo lỗi:

    AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
 * The apache2 instance did not start within 20 seconds. Please read the log files to discover problems

Bạn có thể gửi tập tin cấu hình apache của bạn?
Lety

Xin lỗi, làm thế nào để có được tập tin cấu hình apache?
narru033

Nó nên là /etc/apache2/apache2.conf, /etc/apache2/sites-enabled/000-default.confvà nếu bạn đã xác định/etc/apache2/sites-available/yourFile.conf
Lety

Câu trả lời:


8

Chạy

sudo netstat -tulpn | grep :80

và bạn sẽ nhận được kết quả như

tcp        0      0 0.0.0.0:80         0.0.0.0:*      LISTEN     1066/lighttpd

lưu ý pid của quá trình nghe cổng, trong trường hợp của tôi là 1066. Sau đó chạy

sudo kill -9 1066

Hãy nhớ thay pid thành cái đang nghe cổng, Nó có thể không giống với 1066


1

Giống như nhiều ứng dụng máy chủ, bạn không thể liên kết với một cổng đã bị ràng buộc bởi một ứng dụng khác (trong trường hợp này là cổng 80, cho http). Nguyên nhân gây ra lỗi của bạn là do Apache không thể liên kết với cổng 80 vì một thứ khác đã được nghe ở đó.

Chạy sudo netstat -tulpn | grep :80và tìm tên của quá trình đang nghe trên cổng 80. Sau đó, cấu hình lại hoặc xóa chương trình đó.


1

Loại máy chủ nào bạn đang chạy này?

Để khắc phục lỗi đầu tiên

AH00558: apache2: Không thể xác định một cách đáng tin cậy tên miền đủ điều kiện của máy chủ, sử dụng 127.0.1.1. Đặt chỉ thị 'ServerName' trên toàn cầu để chặn thông báo này

Bạn sẽ cần chỉnh sửa httpd.conftập tin, thêm dòng này:

ServerName localhost

Để giải quyết các lỗi khác, bạn nên đảm bảo rằng bạn đang cố chạy Apache với quyền root.

sudo /usr/sbin/apachectl start

1
Đây không phải là lỗi thực sự của họ.
Thomas Ward

Tôi không có một httpd.conftập tin. Tôi có thể đặt dòng đó vào apache2.confkhông?
JohnK

Thiết lập ServerNametrong httpd.confkhông có hiệu lực.
Cerin

1

Tôi có cùng vấn đề này.

Tôi đã cố gắng cài đặt LAMP trên WSL bằng cách theo dõi blog này: LAMP trên WSL nhưng khi tôi ban hành lệnh này:

/etc/init.d/apache2 start  

Tôi đã nhận được lỗi tương tự:

 * Starting Apache httpd web server apache2                                                                             
(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80
(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
*

Trước đây tôi đã cố gắng cài đặt Nginx trên Windows đúng cách và không thành công nhưng tôi nhớ rằng tôi đã ràng buộc Nginx với cổng 80. Vấn đề là tôi không phải là chuyên gia Linux và tôi không thể thấy trong apache2 conf file khu vực để liên kết với một cổng.

Tôi đã thử chạy:

sudo netstat -tulpn | grep :80

và không có gì. Tôi cũng đã chuyển tiếp cổng trong bộ định tuyến của mình để tôi không thể hiểu cách khắc phục lỗi.

Tôi biết Nginx không chạy nên cổng 80 nên vẫn ổn, ngoại trừ chrome mà tôi cho rằng cũng đang chạy trên cổng 80 Vì vậy, trong thất vọng không biết điều gì sẽ xảy ra, tôi đã tiến hành lệnh sudonhư thế này:

sudo  /etc/init.d/apache2 start  

và tôi đã nhận được:

 * Starting Apache httpd web server apache2                                                                              
 *

Bằng cách tiến hành lệnh bắt đầu với sudo, Apache2 có quyền chạy. Đây là một giải pháp ngắn hạn vì không nên chạy Apache2 với quyền root (vì vậy chúng tôi được thông báo) nên giải pháp vẫn còn ở đó nhưng hiện tại, tôi ít nhất có thể tiến hành các thử nghiệm của mình.

Nếu ai biết giải pháp nào xin vui lòng cho chúng tôi biết.


@Yufenyuy cảm ơn. Tôi đã cố bắt tất cả các mã nhưng ...
seanbw

... @ seanbw bạn được chào đón. Đó là lý do tại sao chúng ta ở trong một cộng đồng ...
Yufenyuy Veyeh Dider

@Yufenyuy Các chỉnh sửa tôi nhận được. Phần lớn. bạn có thể cho tôi một liên kết dạy tôi cách gắn thẻ các từ như sudo như một phần của câu không vì tôi thấy sudo có định dạng riêng nhưng nó không nằm trên một dòng riêng biệt. Cảm ơn
seanbw

... @ seanbw bạn có thể đặt từ giữa ví dụ `và` sudo, để nó có định dạng đó ... hy vọng bạn hiểu rõ.
Yufenyuy Veyeh Dider

0

Bạn có thể cài đặt một máy chủ web mới hoặc bất cứ thứ gì dành cho cổng 80 kiểm tra các dịch vụ của bạn và những gì bạn đã cài đặt


0

Trong trường hợp của tôi, đây không phải là vấn đề với nhật ký, nhưng thực tế là với Listenchỉ thị - nó được đặt thành Nghe trên một IP không tồn tại (khi tôi chuyển máy tính xách tay của mình sang mạng khác).

Điều này chỉ nổi lên sau khi tôi gỡ cài đặt dịch vụ, cài đặt lại và nó nói:

(OS 10049) The requested address is not valid in its context. : AH00072: make_sock: could not bind to address 0.0.0.0:80 AH00015: Unable to open logs

Vì vậy, tôi chỉ nhận xét ra chỉ thị Nghe vi phạm (và giữ cho người khác) một voila.

Tôi biết Q là về Ubuntu, nhưng một số người khác có thể gặp phải vấn đề 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.