วิธีการปรับเปลี่ยนจะมีผลโดยไม่ต้องรีสตาร์ท nginx?


74

Apache มีgracefulตัวเลือกที่สามารถสแกนหาการดัดแปลงhttp.confโดยไม่ต้องเริ่ม Apache ใหม่ แล้ว nginx ล่ะ?

คำตอบ:


72

nginx รองรับสัญญาณต่อไปนี้:

TERM, INT - Quick shutdown
QUIT - Graceful shutdown
HUP - Configuration reload: Start the new worker processes with a new configuration, Gracefully shutdown the old worker processes
USR1 - Reopen the log files
USR2 - Upgrade Executable on the fly
WINCH - Gracefully shutdown the worker processes

HUP คือสิ่งที่คุณกำลังมองหา sudo kill -HUP pid (nginx pid)

แหล่งที่มา: http://nginx.org/en/docs/control.html


90

ใช้การโหลดซ้ำ nginx -s


4
^ นี่ 100% ทำงานเป็นเสน่ห์
meshfields

1
สิ่งนี้ไม่ได้มีผลกับการเปลี่ยนแปลงการตรวจสอบสิทธิ์พื้นฐาน HTTP สำหรับฉัน
Nick Rolando

นี่ควรเป็นคำตอบที่ยอมรับได้
John Foley

20

โดยปกติแล้วสคริปต์เริ่มต้นของ nginx จะมีreloadการดำเนินการเช่น:

  • ลินุกซ์ /etc/init.d/nginx reload
  • FreeBSD /usr/local/etc/rc.d/nginx reload


-1

ฉันเขียนเกี่ยวกับวิธีการรีสตาร์ท nginx โดยที่ไม่มีเวลาหยุดทำงานสักครู่ก่อนหน้านี้ สิ่งนี้อาจเป็นประโยชน์สำหรับคุณ

http://tumblelog.jauderho.com/post/101514948/restart-nginx-with-zero-downtime


8
บล็อกของคุณไม่มีข้อมูลจริง
Geuis

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