Jestem noobem Nginx i wypróbowuję ten samouczek dotyczący Nginx 1.1.19 na Ubuntu 12.04. Mam ten plik konfiguracyjny nginx.
Po uruchomieniu tego polecenia test kończy się niepowodzeniem:
$ sudo service nginx restart
Restarting nginx: nginx: [crit] pread() "/etc/nginx/sites-enabled/csv" failed (21: Is a directory)
nginx: configuration file /etc/nginx/nginx.conf test failed
Skąd mam wiedzieć, dlaczego test nginx.conf nie powiódł się?
sudo service nginx restart
) Nginx ma również narzędzie CLI:nginx -s reload
do ponownego załadowania konfiguracji w przypadku jej zmiany. To znacznie szybciej.Odpowiedzi:
sudo nginx -t
powinien przetestować wszystkie pliki i zwrócić błędy i lokalizacje ostrzeżeńźródło
-c
flagę, więcnginx -c /etc/nginx/sites-enabled/default -t
-t
niejasno mówi Nie uruchamiaj, po prostu przetestuj plik konfiguracyjny. Nginx sprawdza konfigurację pod kątem poprawnej składni, a następnie próbuje otworzyć pliki, o których mowa w konfiguracji. pliki są nie tylko sprawdzane pod kątem istnienia, ale analizowane. Zgodnie z oczekiwaniami kod zakończenia wynosi 1 w przypadku znalezienia błędu i 0 w przeciwnym razie.To konkretne polecenie zadziałało dla mnie.
sudo apt-get remove --purge nginx nginx-full nginx-common
i
sudo apt-get install nginx
zasługa tej odpowiedzi na stackexchnage
źródło
Pokaż plik i śledź błąd
źródło