Soru Nginx nasıl yeniden başlatılır?


Benim için "killall nginx" çalıştırıyorum ve "sbin / nginx" ile başladım, herkes daha iyi bir yeniden başlatma komut dosyasına sahip?

BTW: Kaynaktan nginx'i yükledim, 'service nginx' komutunu veya /etc/init.d/nginx dosyasını bulamıyorum


79
2017-12-16 07:49


Menşei


Neden kaynaktan yüklüyorsunuz? Nginx paketleri, çoğu iyi Sunucu linux dağıtımları için kullanılabilir. Ya da kendi paketlerinizi yuvarlayabilirsiniz, ancak paketleri kullanmamanız sürdürülebilirlik için bir tetikleyicidir. - Tom O'Connor
mod_rails yüzünden - larry


Cevaplar:


Nginx paketi, normal start | stop | restart | yeniden yükle ... işlevselliğini sağlayan bir /etc/init.d/nginx betiği sağlar.

/etc/init.d/nginx restart 

nginx'i yeniden başlatacak

istediği gibi

service nginx restart

Düzenle

İşte /etc/init.d/nginx olarak kullanabileceğiniz bir betiğin bağlantısıdır.


129
2018-06-11 00:50



Deponuza bağlı. Nginx kaynağı init betikleri sağlamaz, eğer kaynaklardan güncellenmiş ve derlenmeyi seviyorsanız, wiki'den bir tane almanız gerekir. - Martin Fjordvald
Soruları cevaplamadan önce daha çok kahve içmeliyim ... - Iain
nginx hizmetinin yeniden başlatılması neyi gösterir ve init.d / nginx'te bir değişiklik yapıldığında bir şeyleri yeniden yüklemek uygun olur mu? İki komutum (/etc/init.d/nginx ve service nginx) senkronizasyon dışı görünüyor. - Danny
@Danny: dunno Bunu yazdım> 2 yıl önce. - Iain


http://wiki.nginx.org/CommandLine

Bağlantıların içinde nginx sunucusunu başlatmak ve durdurmak için bazı komutlar var.

nginx'i başlatmak için:

/usr/bin/nginx

nginx'i durdurmak için:

/usr/bin/nginx -s stop

/usr/bin nginx'inizi nereye yüklediğinize bağlı


11
2018-02-12 19:08



@slm düzeltildi! sadece biraz daha detay ekliyorum. - LiJung


Yapılandırma dosyalarını düzenledikten sonra, OpenBSD'de bunun gibi yeniden başlatırım:

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

HUP sinyal, yapılandırma dosyalarını yeniden okur tail herhangi bir hatanın karşılaşıldığını gösterir, date bu hataları içeriğe koyar (bir hata sadece date kayıttan geçen zaman ile eşleşir) ve sleep 1 Nginx'ten günlüğe yazmadan önce okumaya kadar geçen süre zarfında yazma zamanı bulunmadığından emin olunmasını sağlar.

Göründüğü gibi:

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# 

Günlüğünden gelen zamanın, yazdırılan zamanlar arasında olmaması gerçeği. date Bu sefer hatalarla karşılaşılmadığını ve yeni yapılandırmanın iyi olduğunu belirtir.


1
2017-12-16 08:00





NginX Wiki'de init betiklerini bulabilirsiniz: http://wiki.nginx.org/Configuration#Init_Scripts

Yeniden başlatma işlevi aşağıdaki komutu çalıştırır:

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

Nginx’i / opt / nginx’e yüklediyseniz, değiştirin BASEDIR= tarafından BASEDIR=/opt/nginx.


0
2017-12-16 08:02





Genellikle, kaynaktan yüklenen paketler başlangıç ​​komut dosyasını yüklemez /etc/init.d/. İki seçeneğin var.

1- Kaynak kod dizininde veya web sitesinde bir komut dosyası arayabilir ve gerekirse özelleştirebilirsiniz.

2- Başlangıç ​​betiğini sisteminizden başka bir paket için kopyalayabilir ve özelleştirebilirsiniz.


0