วิธีหยุด nginx บน Mac OS X


36

ฉันได้ติดตั้งและกำหนดค่าเซิร์ฟเวอร์ nginx บน Mac ของฉันจาก MacPort

  1. sudo port install nginx
  2. ปฏิบัติตามคำแนะนำจากคอนโซลการติดตั้งพอร์ตและสร้างรายการเริ่มต้น launchd สำหรับ nginx จากนั้นเริ่มเซิร์ฟเวอร์
  3. เปลี่ยนชื่อnginx.conf.exampleไปnginx.confและเปลี่ยนชื่อไปmime.types.examplemime.types

มันใช้งานได้ดี แต่ฉันหยุดไม่ได้

ฉันพยายามsudo nginx -s stopแล้ว แต่นี่ไม่ได้หยุดเซิร์ฟเวอร์ฉันยังสามารถเห็น "ยินดีต้อนรับสู่ nginx!" หน้าในเบราว์เซอร์ของฉันบนhttp://localhost/; ผมก็ยังคงเห็นหลักและผู้ปฏิบัติงานของกระบวนการ Nginx ps -e | grep nginxกับ

วิธีที่ดีที่สุดในการเริ่ม / หยุด nginx บน Mac คืออะไร

BTW ฉันได้เพิ่ม "daemon off;" เข้าสู่ nginx.conf - ตามคำแนะนำของแหล่งข้อมูลต่างๆ

คำตอบ:


66
# nginx -h
...
-s signal     : send signal to a master process: stop, quit, reopen, reload
...

เมื่อฉันติดตั้ง nginx ด้วย MacPorts คำสั่งด้านบนไม่ทำงาน - ฉันไม่ได้แจ้งข้อผิดพลาดให้ฉัน แต่เซิร์ฟเวอร์ยังคงทำงานต่อไป แต่เมื่อฉันเช็ด nginx ทำความสะอาดและติดตั้งใหม่เป็นส่วนหนึ่งของการติดตั้งโมดูลผู้โดยสาร nginx ตอนนี้มันทำงานได้แล้ว: ฉันสามารถทำ "nginx -s stop" และหยุดเซิร์ฟเวอร์ ขอขอบคุณ!
Alex Kaushovik

2
ใช้nginx -s stopทำงานสำหรับฉัน แต่แล้วฉันก็ไม่สามารถที่จะเริ่มต้นเซิร์ฟเวอร์ของฉันโดยใช้อย่างใดอย่างหนึ่งnginx -s reopen, nginx -s reload, nginx -s startหรือnginx -s restart? เริ่มต้นใหม่ได้อย่างไร? ไม่เป็นไรเพียงแค่รันโปรแกรม$ sudo /usr/local/sbin/nginxก็จะทำการรีสตาร์ท
ทิมปีเตอร์สัน

@timpeterson restartหรือreloadทำงานบน ... เซิร์ฟเวอร์ที่ใช้งานได้ถ้าคุณหยุดมันคุณแค่ต้องเริ่มด้วยnginxคำสั่ง'no-signal' ทั่วไป
biesior


8

วิธีที่ถูกต้องในการทำเช่นนี้สำหรับ Nginx ที่ติดตั้งผ่าน MacPorts:

  • ราคาเริ่มต้น: sudo port load nginx
  • หยุด: sudo port unload nginx

OS X ใช้ launchd ดังนั้นกระบวนการเริ่ม / หยุด daemons นั้นแตกต่างกันเล็กน้อย



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