প্রশ্ন কিভাবে nginx পুনরায় আরম্ভ করবেন?


আমার জন্য, আমি "killall nginx" চালাচ্ছি এবং এটি "sbin / nginx" দিয়ে শুরু করি, যে কেউ ভাল পুনঃসূচনা স্ক্রিপ্ট আছে?

BTW: আমি nginx উৎস থেকে ইনস্টল করি, আমি 'service nginx' কমান্ড বা /etc/init.d/nginx খুঁজে পাই না


79
2017-12-16 07:49


উত্স


কেন আপনি উৎস থেকে ইনস্টল করা হয়? Nginx প্যাকেজগুলি সবচেয়ে ভাল সার্ভার লিনাক্স বিতরণগুলির জন্য উপলব্ধ। অথবা আপনি নিজের প্যাকেজগুলি রোল করতে পারেন, কিন্তু প্যাকেজগুলি ব্যবহার করা না বজায় রাখার জন্য একটি বাগার। - Tom O'Connor
mod_rails কারণ - larry


উত্তর:


Nginx প্যাকেজটি একটি /etc/init.d/nginx স্ক্রিপ্ট সরবরাহ করে যা স্বাভাবিক শুরু করে | স্টপ | পুনরায় শুরু করুন | পুনরায় লোড করুন ... কার্যকারিতা।

/etc/init.d/nginx restart 

nginx পুনরায় আরম্ভ করা হবে

ইচ্ছার যেমন

service nginx restart

সম্পাদন করা

এখানে একটি স্ক্রিপ্টের লিঙ্ক যা আপনি /etc/init.d/nginx হিসাবে ব্যবহার করতে পারেন।


129
2018-06-11 00:50



আপনার সংগ্রহস্থলের উপর নির্ভর করে। Nginx উৎসটি ইনিট স্ক্রিপ্টগুলি সরবরাহ করে না তাই যদি আপনি আপডেট হওয়া এবং উৎস থেকে কম্পাইল করতে চান তবে আপনাকে উইকি থেকে একটি পেতে হবে। - Martin Fjordvald
প্রশ্নের উত্তর দেওয়ার আগে আমার আরও কফি থাকতে হবে ... - Iain
service nginx কীভাবে পুনরায় শুরু করে এবং init.d / nginx এ কোনও পরিবর্তন করা হলে এটি পুনরায় লোড করার জন্য কোনটি উপযুক্ত? আমার দুটি কমান্ড (/etc/init.d/nginx এবং পরিষেবা nginx) সিঙ্ক আউট বলে মনে হচ্ছে। - Danny
@ ড্যানিঃ ডুনো আমি এটা লিখেছি> 2 বছর আগে। - Iain


http://wiki.nginx.org/CommandLine

লিংকের ভিতরে শুরু এবং nginx সার্ভার বন্ধ করার জন্য কিছু কমান্ড আছে

nginx শুরু করার জন্য:

/usr/bin/nginx

nginx থামানোর জন্য:

/usr/bin/nginx -s stop

/usr/bin আপনি আপনার nginx ইনস্টল যেখানে উপর নির্ভর করে


11
2018-02-12 19:08



@ এসএমএম স্থির! শুধু কিছু বিস্তারিত যোগ করুন। - LiJung


কনফিগারেশন ফাইল সম্পাদনা করার পরে, আমি OpenBSD এ এটির মতো পুনরায় চালু করব:

kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && \
    tail -2 /var/www/logs/error.log ; date

দ্য HUP সংকেত এটি তার কনফিগারেশন ফাইল পুনরায় পড়তে, তোলে tail কোন ত্রুটি সম্মুখীন হয়েছে কিনা তা দেখায়, date প্রসঙ্গে যারা ত্রুটি রাখে (একটি ত্রুটি ঘটেছে শুধুমাত্র সময় থেকে ঘটেছে date লগ থেকে সময় মেলে), এবং sleep 1 Nginx এর কাছে লিখার সময় থাকার আগে লগ থেকে পড়ার মধ্যে কোনও রেস শর্ত নেই।

এই এটা দেখায় কিভাবে হয়:

Cns# kill -HUP `cat /var/run/nginx.pid` && date && sleep 1 && tail -2 /var/www/logs/error.log ; date
Tue Feb 12 10:58:52 PST 2013
2013/02/12 10:03:35 [emerg] 8120#0: directive "set" is not terminated by ";" in /etc/nginx/conf.d/etc.ngx.grok/bxr.su.conf:226
2013/02/12 10:04:19 [emerg] 8120#0: invalid return code "$uri_def" in /etc/nginx/conf.d/etc.ngx.grok/bxr.su.conf:231
Tue Feb 12 10:58:53 PST 2013
Cns# 

লগ থেকে সময় মুদ্রিত বারের মধ্যে নয় date এই সময় প্রায় কোন ত্রুটি সম্মুখীন হয়েছে নির্দেশ করে, এবং নতুন কনফিগারেশন একটি ভাল এক।


1
2017-12-16 08:00





NginX উইকি-এ আপনি init স্ক্রিপ্ট খুঁজে পেতে পারেন: http://wiki.nginx.org/Configuration#Init_Scripts

পুনরায় আরম্ভ ফাংশন নিম্নলিখিত কমান্ড চালায়:

BASEDIR=
$BASEDIR/sbin/nginx -s stop
$BASEDIR/sbin/nginx $BASEDIR/conf/nginx.conf

যদি আপনি nginx / opt / nginx ইনস্টল করেছেন, প্রতিস্থাপন করুন BASEDIR= দ্বারা BASEDIR=/opt/nginx


0
2017-12-16 08:02





সাধারণত, উৎস থেকে ইনস্টল করা প্যাকেজগুলি স্টার্টআপ স্ক্রিপ্ট ইনস্টল করে না /etc/init.d/। আপনার দুটি বিকল্প আছে।

1- আপনি সোর্স কোড ডিরেক্টরি বা ওয়েবসাইটে কোন স্ক্রিপ্ট সন্ধান করতে পারেন এবং প্রয়োজনে এটি কাস্টমাইজ করুন।

2- আপনি আপনার সিস্টেম থেকে অন্য প্যাকেজের জন্য একটি স্টার্টআপ স্ক্রিপ্ট অনুলিপি করতে এবং এটি কাস্টমাইজ করতে পারেন।


0