2011-10-04 18 views
17

Ho emesso uno stop nginx e successivamente ho ricevuto questo errore durante il tentativo di ricaricarlo.Nginx Numero PID non valido

[errore]: numero PID non valido "" in "/var/run/nginx.pid"

Che/var/run/file di nginx/pid è atm vuota.

Cosa devo fare per risolverlo?

risposta

24

nginx -s reload viene utilizzato solo per indicare a un processo in esecuzione di nginx di ricaricare la configurazione. Dopo un arresto, non si dispone di un processo di nginx in esecuzione per inviare un segnale a. Basta eseguire nginx (possibilmente con un -c/percorso/su/config/file)

+4

In un'installazione stock di distribuzioni correnti, probabilmente si vorrà utilizzare lo script di avvio: 'sudo service nginx start' –

12

nel mio caso ho risolto questo avviando il servizio.

sudo /etc/init.d/nginx iniziare

Il comando sopra inizierà il servizio in Debian/Ubuntu. Emetterà un errore se c'è qualche problema (come Apache ascoltare nello stesso porto)

Dopo reload che nginx -s funzionerà come un fascino

7

Nella versione più recente (1.2.0) che ho scaricato non esiste alcuna opzione "-s start", si dirà nginx: opzione non valida: "-s start"

è possibile avviare nginx da

sudo /etc/nginx/sbin/nginx 

verrà avviato il server e quindi non ci sarà qualsiasi errore di numero di pid non valido.

5

Nel mio caso nginx è stato arrestato (si è verificato un arresto anomalo). Risolto il problema da:

service nginx status 
nginx stop/waiting 

service nginx start 
nginx start/running, process 3535 

Quindi nginx -s ricarica ha funzionato come un fascino.

Sto usando nginx/1.8.0 su fidato.

+0

È molto strano come il documento nginx l'azione non include questi comandi. Il solo dire "Per avviare nginx, eseguire il file eseguibile." !! Non so perché non hanno incluso la riga: ** sudo servizio nginx start ** <- questo ha funzionato da me –

0

Per evitare tempi di inattività con nginx riavvio,

ps aux | grep nginx 
PID of nginx master process 

echo PID > /var/run/nginx.pid 
nginx -s reload 
0

Questo cancellerà il problema su Ubuntu 16.04 e al di sopra

sudo service nginx stop  

sudo service nginx start 

ps -eaf|grep nginx  # confirm its running 

sudo nginx -t && sudo nginx -s reload # confirm config is OK 

#  typical output 
# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok 
# nginx: configuration file /etc/nginx/nginx.conf test is successful 


sudo service nginx stop # issue stop 

ps -eaf|grep nginx  # confirm it actually stopped 

ora sanità mentale è stata restaurata e si è liberi di lanciare a piacimento

Problemi correlati