2016-03-08 18 views
11

Mam problem, który próbuję naprawić od kilku dni i nie wiem co robić, szukałem odpowiedzi, ale wszystkie te, które znalazłem, nie były ". Pomóż mi.nginx nie zaczął się i nie może się uruchomić

Jestem trochę nowy tutaj i naprawdę mam nadzieję, że ktoś może mi pomóc. Możesz mi powiedzieć, jakie informacje muszę podać w nadziei na znalezienie rozwiązania.

$ systemctl status nginx.service 
nginx.service - Startup script for nginx service 
    Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) 
    Active: failed (Result: exit-code) since Tue 2016-03-08 13:23:35 GMT; 2min 20s ago 

Mar 08 13:23:33 startdedicated.com nginx[8315]: nginx: [emerg] bind() to ------------ f...e) 
Mar 08 13:23:33 startdedicated.com nginx[8315]: nginx: [emerg] bind() to ----- f...e) 
Mar 08 13:23:34 startdedicated.com nginx[8315]: nginx: [emerg] bind() to ----- f...e) 
Mar 08 13:23:34 startdedicated.com nginx[8315]: nginx: [emerg] bind() to ----- f...e) 
Mar 08 13:23:35 startdedicated.com nginx[8315]: nginx: [emerg] bind() to ----- f...e) 
Mar 08 13:23:35 .startdedicated.com nginx[8315]: nginx: [emerg] still could not bind() 
Mar 08 13:23:35 startdedicated.com systemd[1]: nginx.service: control process exited, code=...=1 
Mar 08 13:23:35 startdedicated.com systemd[1]: Failed to start Startup script for nginx service. 
Mar 08 13:23:35 startdedicated.com systemd[1]: Unit nginx.service entered failed state. 
Mar 08 13:23:35 startdedicated.com systemd[1]: nginx.service failed. 
+0

Wyślij swoje dane nginx.conf i: "nginx -t" ... – user2925795

+0

http://prntscr.com/acoayr Tutaj jest. Nie mogę opublikować kodu, więc musiałem zrobić zrzut ekranu. – daliborsb

+0

Proszę napisać swoją konfigurację bloku serwera i: "nginx -t" wyjście ... Czy próbowałeś ponownie uruchomić Nginx? "Restart nginx usługa" – user2925795

Odpowiedz

0

Spróbuj ustawić użytkownikowi w nginx.conf, może dlatego, że nie można uruchomić usługi:

User www-data; 
+0

Czy powinienem dodać nową linię z "User = www-data"? – daliborsb

+0

w twoim nginx.conf .. pierwsza linia ekranu to użytkownik nginx; usuń # i umieść dane użytkownika www; – user2925795

+0

http://prntscr.com/acoqd8 To samo. Próbowałem, ale to już nie działa. – daliborsb

9

próba debugowania z poleceniem:

$ service nginx configtest 

które wyjścia coś podobnego :

Testing nginx configuration: nginx: [emerg] unknown directive "stub_status" in /etc/nginx/sites-enabled/nginx_status:11 
nginx: configuration file /etc/nginx/nginx.conf test failed 

i naprawić te ostrzeżenia

Następnie ponownie nginx

+1

To byłoby jedno z najlepszych podejść, które trzeba wypróbować, dzięki – GPrathap

+12

** Testowanie konfiguracji nginx: nie powiodło się! ** –

18

Może się przydać, aby sprawdzić składnię plików konfiguracyjnych nginx poprzez uruchomienie:

nginx -t -c /etc/nginx/nginx.conf 
+0

W moim przypadku działa z 'sudo/usr/local/nginx/sbin/nginx -t -c/usr/local/nginx/conf/nginx.conf' lub po prostu' sudo/usr/local/nginx/sbin/nginx -t' – Pathros

-4
  • wykorzystywać te polecenia

    1. sud O apache2 stop

    2. sudo apt-get purge apache2

    3. sudo apt-get update

    4. sudo apt-get install nginx

    5. nginx usług sudo restart

+10

Więcej wyjaśnień sprawi, że będzie to lepsza odpowiedź. – CGritton

1

Gdy coś nie może się wiązać do portu, to 5%, ponieważ nie jest uruchamiany przez root (lepki bit suid, sudo) i 94%, ponieważ inna aplikacja jest już powiązana z tym portem.

Upewnij się, że nginx jest naprawdę wyłączony i nie próbuj uruchomić go dwukrotnie przez przypadek.

Upewnij się, że nie mają Apache lub innych usług działających tego portu use 80.

Wykorzystać netstat -a | grep tcp aby dowiedzieć się więcej.

1

Miałem ten sam problem, gdy użyłem Vesta, która używa nginx z apache. Problem polegał na tym, że po zastosowaniu wszystkich aktualizacji Apache zaczął słuchać 443 dla https. Rozwiązaniem było tylko skomentowanie 443 rzeczy w ports.conf. Dzieje się tak, ponieważ nginx również używa tego portu.

0

Używam RHEL 7.4 z NGINX 1.13.8 i jeśli to zrobię to samo z sudo, to działa OK:

sudo systemctl status nginx.service 

Wystarczy upewnić się, kto chce korzystać nginx.service posiada uprawnienia do wykonywania na nim.

Powiązane problemy