2016-03-23 6 views
3

Mein nginx beginnt nicht an Port 80.FEHLER: ungültige PID-Nummer "" in "/run/nginx.pid"

Ich habe die folgenden Angaben hinzugefügt:

$ nginx -s reload 
2016/03/23 16:11:27 [error] 24992#0: invalid PID number "" in "/run/nginx.pid" 
$ ps -ef | grep nginx 
root  25057 2840 0 16:16 pts/1 00:00:00 grep --color=auto nginx 
$ kill -9 25057 
bash: kill: (25057) - No such process 
$ service nginx start 
Nothing.. 

Bitte geben Lösung ..

Antwort

4

Versuch nginx -s reload zu laufen, ohne vorher nginx starten zu einem Fehler führen wird, da nginx für die Datei aussehen enthält, es ist Meister pid, wenn Sie es zum Neustart sagen. In Ihrem Fall scheint es, dass nginx nicht ausgeführt wurde, daher existiert die Datei, die diese ID enthält, nicht.

Indem Sie kill -9 25057 ausgeführt haben, haben Sie versucht, Ihren eigenen Befehl ps -ef | grep nginx zu töten, der nicht mehr existierte, also haben Sie "Kein solcher Prozess".

Um sicherzustellen, dass alles gut würde ich nginx mit nginx -s stop dann starten Sie es mit nginx von nginx -s reload gefolgt aufhören zu prüfen, ob alles in Ordnung ist. In jedem Fall könnte die Protokolldatei Ihnen sagen, ob etwas schlechtes passiert /var/log/nginx/error.log.

Wenn das funktioniert, können Sie versuchen, http://localhost:80 zugreifen oder aber Sie nginx konfiguriert haben, und folgen Sie auch das Fehlerprotokoll und Zugriffsprotokoll /var/log/nginx/error.log

Als Nebenbemerkung: Wenn dies durch Zufall geschieht ein Fall zu sein, wo nginx wird von einem anderen Tool wie confd neu geladen, Sie sollten auch überprüfen, ob nginx es tatsächlich in /run/nginx.pid im Gegensatz zu /var/run/nginx/nginx.pid speichert.