मैंने एक से अधिक बार यहां समाप्त किया है इसलिए मैंने सोचा कि मैं यहां के उत्तरों का उपयोग करने के बाद अपने स्वयं के अनुभव के आधार पर एक अद्यतन उत्तर प्रदान करूंगा। विशेष रूप से @danorton और @orj को उनके उत्तर के लिए धन्यवाद।
इस लिपि का परीक्षण अपस्टार्ट 1.5 पर किया गया है जो उबंटू 12.04 पर नगनेक्स 1.0.11 और पैसेंजर 3.0.11 के साथ चल रही है। यदि आप पैसेंजर का उपयोग नहीं कर रहे हैं तो आपको post-stop
लाइन के साथ खेलने की आवश्यकता हो सकती है । अपस्टार्ट कुकबुक का संदर्भ लें।
एक खाली /etc/init/nginx.conf
जोड़ में निम्नलिखित पंक्तियाँ हैं (यदि आप चाहें तो टिप्पणियों को हटा सकते हैं):
description "nginx http daemon"
start on (filesystem and net-device-up IFACE=lo)
stop on runlevel [!2345]
env DAEMON=/usr/local/nginx/sbin/nginx
env PIDFILE=/var/run/nginx.pid
# Needed to allow Nginx to start, however, the wrong PID will be tracked
expect fork
# Test the nginx configuration (Upstart will not proceed if this fails)
pre-start exec $DAEMON -t
# Ensure nginx is shutdown gracefully
# Upstart will be tracking the wrong PID so the following is needed to stop nginx
post-stop exec start-stop-daemon --stop --pidfile $PIDFILE --name nginx --exec $DAEMON --signal QUIT
# Start Nginx
exec $DAEMON
मैंने Nginx Wiki से Upstart स्क्रिप्ट ली है और इसे कई लाइनों के रूप में ट्विक किया गया है जिनकी आवश्यकता नहीं है, भ्रम का कारण है या काम नहीं करता है।
जहाँ आपने nginx स्थापित किया है और पीआईडी लिख रहे हैं, उसके आधार पर आपको फेरबदल env DAEMON
और env PID
लाइनों की आवश्यकता हो सकती है । PID को nginx में कॉन्फ़िगर किया जा सकता है।
मैंने सभी रूपों की कोशिश की expect
। केवल expect fork
काम करने लगता है। पैसेंजर के साथ नगीने 61 कांटे बनाता है। अपस्टार्ट को 0, 1 या 2 की आवश्यकता है। जैसा कि अन्य ने संकेत दिया है, उपस्टार्ट गलत पीआईडी पर नज़र रखेगा। मैं भी हटा दिया है respawn
क्योंकि यह शायद उसी कारण से कुछ नहीं करता है। कुछ अतिरिक्त प्री / पोस्ट-स्टार्ट स्क्रिप्ट वास्तविक पीआईडी को हथियाने के द्वारा ठीक करने में सक्षम हो सकती है। हालाँकि, मैं पुनरारंभ को संभालने के लिए मॉनेट का उपयोग करता हूं, इसलिए इसकी आवश्यकता नहीं है।
उपयोग न करें daemon off
। यह केवल विकास के लिए है। Http://wiki.nginx.org/CoreModule#daemon देखें
संदर्भ: