2013-04-13 13 views
5

Kiedy próbuję ponownie uruchomić nginx za pomocą sudo /etc/init.d/nginx restart pojawia się komunikat z tematu.Restartowanie nginx: nginxnginx: [emerg] bind() do 0.0.0.0:80 nie powiodło się (98: Adres już w użyciu)

Odkryłem, że powodem jest najprawdopodobniej to, że skrypt nie wie, jak zatrzymać demona, ponieważ plik pid (/var/run/nginx.pid) nie jest tworzony przy starcie.

Mam dwie instalacje na dwóch różnych serwerach ... jeden został skompilowany ze źródła, a drugi przyszedł z pasażerem phusion.

Próbowałem tego polecenia:

start-stop-daemon --start --quiet --pidfile /var/run/nginx.pid --exec /usr/sbin/nginx -- -c /etc/nginx/nginx.conf 

na obu komputerach i na jeden plik PID jest tworzony i na drugi nie jest - na tym komputerze ścieżki są nieco inne (ale nie wiem że jest to istotne):

start-stop-daemon --start --quiet --pidfile /var/run/nginx.pid --exec /opt/nginx/sbin/nginx -- -c /opt/nginx/conf/nginx.conf 

uruchamiane przez proces i PID nie jest napisane ...

jestem na Debianie ...

Jakieś sugestie?

Odpowiedz

5

Rozwiązaniem jest odkomentowaniu tę linię w nginx.conf:

pid  /var/run/nginx.pid; 

Wygląda różne instalacje zrobić to inaczej, ale dobrą rzeczą jest to odkomentowaniu.

0

udało mi się rozwiązać ten problem, uruchamiając następującą komendę utrwalacza

$ sudo -k utrwalacz 80/tcp

który zabija co proces jest za pomocą portu 80..hopefully nic innego nie wkręcić.

kredytowych za tym idzie do: https://goo.gl/6oc0xD

0
$ sudo nginx -t 

zobaczyć wszystkie procesy, czasami nie masz pełną zgodę

Powiązane problemy