Ik probeer deze service te starten, maar het lukt niet, de onderstaande fout doet zich voor:
root@zabbix:/home/appliance# systemctl status nginx.service
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2018-07-25 18:33:26 UTC; 1min 27s ago
Process: 30040 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=1/FAILURE)
Process: 30037 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Jul 25 18:33:25 zabbix nginx[30040]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
Jul 25 18:33:25 zabbix nginx[30040]: nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
Jul 25 18:33:25 zabbix nginx[30040]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
Jul 25 18:33:26 zabbix nginx[30040]: nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
Jul 25 18:33:26 zabbix nginx[30040]: nginx: [emerg] listen() to [::]:80, backlog 511 failed (98: Address already in use)
Jul 25 18:33:26 zabbix nginx[30040]: nginx: [emerg] still could not bind()
Jul 25 18:33:26 zabbix systemd[1]: nginx.service: Control process exited, code=exited status=1
Jul 25 18:33:26 zabbix systemd[1]: *******Failed to start A high performance web server*** and a reverse proxy server.****
Jul 25 18:33:26 zabbix systemd[1]: nginx.service: Unit entered failed state.
Jul 25 18:33:26 zabbix systemd[1]: nginx.service: Failed with result 'exit-code'.
Antwoord 1, autoriteit 100%
Ik vraag me af waarom niemand het niet heeft gehad over het uitschakelen van apache2
sudo service apache2 stop
Je hebt al een proces gebonden aan de HTTP-poort 80.
U kunt het commando sudo lsof -i:80
uitvoeren om een lijst met processen te krijgen die de poort gebruiken en vervolgens de webserver stop/uitschakelen.
Probeer het proces dat poort 80 gebruikt te stoppen:
sudo fuser -k 80/tcp
Antwoord 2, autoriteit 69%
Voor mij werd deze fout veroorzaakt door een default
nginx-site die al op poort 80 stond. Het verwijderen van de standaardsite werkte
sudo rm /etc/nginx/sites-enabled/default
sudo service nginx restart
Antwoord 3, autoriteit 58%
Je hebt al een proces dat is gebonden aan de HTTP-poort 80.
U kunt het commando sudo lsof -i:80
uitvoeren om een lijst met processen te krijgen die de poort gebruiken en vervolgens de webserver stoppen/uitschakelen.
Antwoord 4, autoriteit 18%
Er kunnen problemen zijn met het configuratiebestand. U kunt dit gebruiken
nginx -t -c /etc/nginx/nginx.conf
opdracht om eventuele bugs in het configuratiebestand te vinden. Als je merkt dat de bugs zijn opgelost die de sudo service nginx restart
opnieuw uitvoeren. Het zal werken.
Antwoord 5, autoriteit 18%
Probeer het proces dat poort 80 gebruikt te stoppen:
sudo fuser -k 80/tcp
Antwoord 6, autoriteit 13%
Probeer het proces dat poort 80 gebruikt te stoppen:
sudo fuser -k 80/tcp
Toen je opnieuw opstartte met
sudo systemctl restart nginx
Antwoord 7, autoriteit 5%
Naar mijn ervaring kan deze fout in verschillende situaties worden geactiveerd (die dezelfde root kunnen hebben, maar als verschillende scenario’s worden gezien).
Niet alleen poort 80
Afhankelijk van uw nginx-configuratie, moet u ook poort 443 proberen:
sudo lsof -i:80
sudo lsof -i:443
U zou uw nginx-luisterpoorten moeten kunnen controleren in /etc/nginx/sites-enabled
(onder Debian)
Speciaal geval
In mijn geval was er een nginx-instantie actief, die zichzelf zou blokkeren om opnieuw op te starten. Het zou niet naar beneden gaan met sudo systemctl stop nginx
. Ik moest sudo killall nginx
gebruiken en kon dan sudo systemctl start nginx
gebruiken.
Configuratiefout
Ik kreeg ook exact dezelfde foutmelding bij een configuratiefout.
Je kunt je nginx-configuratie controleren met /usr/sbin/nginx -c /etc/nginx/nginx.conf@ (this will also test all virtual host files (
/etc/nginx/sites -ingeschakeld`)
Antwoord 8, autoriteit 4%
Voor mij heeft het stoppen van de apache-service het probleem opgelost
sudo service apache2 stop
Antwoord 9, autoriteit 4%
ik had hetzelfde probleem, was omdat ik apache en nginx op dezelfde server heb!
dus toen ik sudo reboot typte, werkte het niet omdat het apache startte terwijl ik nginx gebruikte, dus ik voer gewoon deze twee opdrachten uit
sudo systemctl stop apache2
dan
sudo systemctl start nginx
en sudo systemctl schakel apache2 uit
dus de volgende keer dat ik opnieuw opstart, krijg ik niet hetzelfde probleem
hulp van aws services-ondersteuning
Antwoord 10, autoriteit 2%
Ik had dit probleem ook. Ik heb het bestand /etc/nginx/site-available/default
gecontroleerd en ben vergeten het haakje te sluiten (syntaxisfout).