บันทึกข้อผิดพลาด nginx มีขนาดใหญ่มากดังนั้นฉันจึงลบและสร้างขึ้นใหม่ตอนนี้ nginx จะไม่เริ่มทำงาน


11

ฉันลบไฟล์/var/log/nginx/error.logแล้วสร้างขึ้นใหม่โดยใช้:

sudo nano error.log

ทำls -laแสดงให้เห็นว่าerror.logและaccess.logมีสิทธิ์ที่เหมือนกัน

เมื่อฉันลองและเริ่ม nginx ฉันได้รับข้อผิดพลาด:

การแจ้งเตือน: ไม่สามารถเปิดไฟล์บันทึกข้อผิดพลาด: open () "/var/log/nginx/error.log" สิทธิ์ที่ล้มเหลวถูกปฏิเสธ

ปรับปรุง

เมื่อพยายามเริ่ม nginx ฉันก็เห็น:

ฉุกเฉิน: /var/run/nginx.pid ล้มเหลว 13: สิทธิ์ถูกปฏิเสธ

คำตอบ:


25

นี่ไม่ได้แก้ปัญหาของคุณ แต่ในอนาคตถ้าคุณทำ

cat / dev / null> / file / you / ต้องการ / to / ลบออก

คุณจะคัดลอกเนื้อหาของไฟล์โดยไม่มีอะไรและให้สิทธิ์ทั้งหมดในการเจรจาต่อรอง

ไม่ใช่ nginx-speicific แต่นอกจากนี้ตรวจสอบให้แน่ใจว่าคุณกำลังเรียกใช้แอปพลิเคชันในฐานะผู้ใช้ที่ควรรัน หากคุณเคยใช้มันในฐานะ root สิทธิ์ทั้งหมดจะเป็นของ root ดังนั้นผู้ใช้รายอื่นจะไม่สามารถเรียกใช้ได้


มันแตกต่างจากการใช้งานecho "" > /file/to/emptyอย่างไร? พวกเขาทั้งสองเหมือนกันหรือไม่
Gowtham Gopalakrishnan

นั่นควรจะเหมือนกัน นอกจากนี้คุณสามารถละทิ้งทุกสิ่งในตอนเริ่มต้นและทำ> /file/to/empty
Alex

5

วิธีปกติในการหมุนบันทึกด้วย Nginx /etc/init.d/nginx reloadคือการเปลี่ยนชื่อไฟล์แล้ว เซิร์ฟเวอร์เริ่มไฟล์ใหม่และคุณสามารถทำสิ่งที่คุณต้องการด้วยไฟล์เก่า

คุณอาจพบว่ามีประโยชน์ในการแก้ไขการกำหนดค่าเพื่อไม่บันทึกมาก ...


2

ดูที่การกำหนดค่า nginx ตรวจสอบว่าเซิร์ฟเวอร์ใดทำงานอยู่ - โดยคาดเดาว่าผู้ใช้จะเป็น nginx

ดังนั้น:

chown nginx: /var/run/nginx.pid chown -R nginx: /var/log/nginx

ควรทำเคล็ดลับ


แต่ทำไมมันถึงทำงานมาก่อน
Blankman

1
ฉันสงสัยว่าเพราะคุณพยายามเรียกใช้เป็นรูทแล้วลองเริ่มต้นด้วยสคริปต์เริ่มต้น
Geraint Jones

ดีฉันมักจะเริ่มเป็นอย่างนั้นอืม ....
Blankman

nginx.conf พูดว่า: "user www-data"
Blankman

1

ลบไฟล์ error.log และ nginx จะสร้างขึ้นเอง


ฉันลบมันแล้วเมื่อฉันพยายามและเริ่ม nginx คือให้ฉันสิทธิ์เดียวกันปฏิเสธข้อผิดพลาดในไฟล์ /var/log/nginx/error.log
Blankman

ลบบันทึกและรีสตาร์ท Nginx มันจะสร้างบันทึกโดยอัตโนมัติ
WhiteHorse

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.