Dưới đây là một phần của nginx.conf
tôi:Tôi mất nginx.pid, nó biến mất
pid /www/nginx0836/nginx.pid;
Trong khi tôi khởi động lại nginx, trong vài giây tôi chạy ls /www/nginx0836
và nó sẽ liệt kê nginx.pid
. Nhưng sau vài giây, hãy chạy lại ls /www/nginx0836
, nginx.pid
không được liệt kê. Tại sao? Nhân tiện, máy chủ nginx hoạt động tốt và khi tôi chạy
ps -ef | grep "nginx: master process" | grep -v "grep" | awk -F ' ' '{print $2}'
thì tôi có thể thấy nginx pid.
Tôi có cùng một vấn đề trên Hộp Centos bằng nginx/1.0.9. – niwo
Bạn có thực sự sử dụng /www/nginx0836/nginx.pid, hoặc là nó thực sự ở đâu đó dưới/var? CentOS "helpfully" dọn dẹp một số thư mục dưới/var trong khoảng thời gian (/ var/run đến tâm trí) và điều này có thể là những gì đang cắn bạn. –
Hãy thử chạy strace trên quá trình NGinx bắt đầu. Bạn có thể xuất nhật ký strace thành e.g./tmp và đi qua sau đó để xem những gì đang xảy ra Nginx khôn ngoan (nếu điều này thực sự đến từ nginx). Nếu không thì bạn có một cái gì đó từ bên ngoài giả mạo với tập tin pid của bạn. –