Imansible riavviare nginx, bind () non riuscito (98: indirizzo già in uso)

So che questo argomento esiste in varie forms diverse, ma ho problemi a risolvere il mio problema. Se service nginx restart , nginx non riesce con il seguente registro:

 2015/03/14 08:36:42 [emerg] 9400#0: bind() to 0.0.0.0:80 failed (98: Address already in use) 2015/03/14 08:36:42 [emerg] 9400#0: bind() to 0.0.0.0:80 failed (98: Address already in use) 2015/03/14 08:36:42 [emerg] 9400#0: bind() to 0.0.0.0:80 failed (98: Address already in use) 2015/03/14 08:36:42 [emerg] 9400#0: bind() to 0.0.0.0:80 failed (98: Address already in use) 2015/03/14 08:36:42 [emerg] 9400#0: bind() to 0.0.0.0:80 failed (98: Address already in use) 2015/03/14 08:36:42 [emerg] 9400#0: still could not bind() 

Ho solo un carico di configuration in sites-enabled . Quando corrono:

  • Nginx abilita il command del sito
  • Come controllare la configuration nginx ma senza copiare il nuovo file di configuration nella directory nginx?
  • Pianificazione del mio primo server con le macchine virtuali Ubuntu KVM
  • configure: error: Imansible trovare php-config. Si prega di utilizzare --with-php-config = PATH
  • visualizzare vecchi risultati
  • Disinstallare pacchetti Python costruiti dalla sorgente
  •  $ grep -slir "listen 80" $ sites-available/default 

    Mostra che la configuration default ha ascolto 80, ma ciò non dovrebbe imporsi poiché non è sites-enabled .

     $ ps ax -o pid,ppid,%cpu,vsz,wchan,command|egrep '(nginx|PID)' PID PPID %CPU VSZ WCHAN COMMAND 9468 1 0.0 97188 sigsus nginx: master process /usr/sbin/nginx 9471 9468 0.0 97328 ep_pol nginx: worker process 9472 9468 0.0 97368 ep_pol nginx: worker process 9693 9641 0.0 9448 pipe_w egrep --color=auto (nginx|PID) 

    Ecco un netstat mostra le porte utilizzate:

     $ netstat -tulpn Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1300/master tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 9468/nginx tcp 0 0 0.0.0.0:2812 0.0.0.0:* LISTEN 5980/monit tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1174/mysqld tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 1155/memcached tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 9468/nginx tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1113/sshd tcp6 0 0 :::25 :::* LISTEN 1300/master tcp6 0 0 :::9000 :::* LISTEN 9106/hhvm tcp6 0 0 :::22 :::* LISTEN 1113/sshd udp 0 0 127.0.0.1:11211 0.0.0.0:* 1155/memcached 

    Ecco il mio config completo in sites-enabled (l'unico in là):

     server { listen 443 ssl default_server; limit_conn gulag 15; server_name www.my-website.com; access_log /home/my-website/logs/access.log; error_log /home/my-website/logs/error.log info; root /home/my-website/web; index index.php index.html; ssl_certificate /etc/nginx/ssl/my-website.com.chained.crt; ssl_certificate_key /etc/nginx/ssl/my-website.com.key; ssl_prefer_server_ciphers On; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS; include /etc/nginx/includes/my-website_redirects_https.inc; include /etc/nginx/includes/file_cache.inc; include /etc/nginx/includes/wordpress.inc; } server { listen 80; server_name my-website.com www.my-website.com; return 301 https://$server_name$request_uri; } server { listen 443; server_name my-website.com; return 301 https://www.$server_name$request_uri; } server { server_name some-other-website1.com www.some-other-website1.com some-other-website2.com www.some-other-website2.com some-other-website3.com www.some-other-website3.com some-other-website4.com www.some-other-website4.com some-other-website5.com www.some-other-website5.com rewrite ^(.*)$ https://www.my-website.com/some/page/ permanent; } server { server_name some-other-website6.com www.some-other-website6.com some-other-website7.com www.some-other-website7.com some-other-website8.com www.some-other-website8.com rewrite ^(.*)$ https://www.my-website.com/some/other/page/ permanent; } server { server_name subdomain.my-website.com; rewrite ^(.*)$ https://some.otherwebsite.com/ permanent; } server { server_name some-other-website9.com www.some-other-website9.com some-other-website10.com www.some-other-website10.com some-other-website11.com www.some-other-website11.com rewrite ^(.*)$ https://www.my-website.com/ permanent; } 

    Mi chiedo se questo errore bind () sta accadendo a causa della mia configuration. Qualche idea che cosa faccio male? Sto usando nginx / 1.4.6 (Ubuntu). Qualsiasi aiuto sarebbe molto apprezzato.

  • block block nginx e wget
  • Nginx vs Apache come proxy inverso, quale scegliere
  • Qualcuno può spiegare perché "ulimit" prima di iniziare Nginx?
  • Windows Azure - Routing Point-2-Site - Comunicazione: PC locale -> Azure VM
  • Effetto della distanza dal server
  • Come posso configurare Munin per dare una visione "totale" di tutti i miei server cloud?
  • 2 Solutions collect form web for “Imansible riavviare nginx, bind () non riuscito (98: indirizzo già in uso)”

    Prova a fermare nginx:

     service nginx stop 

    Controllare il nginx ancora in esecuzione:

     ps ax | grep nginx 

    E se ancora funziona, uccidi il process:

     kill -p PID 

    Controllare lo stato di nginx, non verrà eseguito:

     ps ax | grep nginx 

    E poi fare un inizio pulito:

     service nginx start 

    Questo ha funzionato per me dopo lo stesso problema.

    Secondo l'output di netstat , la stessa nginx è ancora in esecuzione sulla port 80.

    Prima di tentare di riavviarlo, validationre la configuration con nginx -t e correggere gli errori.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.