web-dev-qa-db-fra.com

Nginx ne fonctionne pas sans message d'erreur

J'essaie de démarrer mon serveur Nginx. Lorsque je tape "$> /etc/init.d/nginx start", un message s'affiche: "Démarrage de nginx:", puis rien ne se produit. Il n'y a pas de message d'erreur, et quand je vérifie le statut de nginx, je vois qu'il n'est pas en cours d'exécution.

Voici mon fichier /etc/nginx/nginx.conf:

worker_processes  4;
daemon off;

error_log  /home/vincent/tmp/nginx.log;

pid        /home/vincent/tmp/nginx.pid;


events {
    worker_connections  1024;
}


http {
default_type  application/octet-stream;

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /home/vincent/tmp/access.log  main;

sendfile        on;

keepalive_timeout  65;

include /etc/nginx/site-enabled/*;

}

Et voici mon fichier/etc/nginx/sites-available/default:

server {
  listen       80;
  server_name technical-test.neo9.lan; 

  access_log  /var/log/nginx/technical-test.neo9.lan.log main;

  set $home /home/vincent;

  location / {
    alias $home/neo9/web/app/;
    index  index.html;
  }

  location /api/ {
    rewrite  ^/api/(.*)$  /$1 break;
    proxy_pass http://localhost:1234;
    proxy_set_header Host $Host;
    proxy_set_header X-Real-IP $remote_addr;
  }
}
60
user2618928

D'abord, toujours Sudo nginx -t pour vérifier que vos fichiers de configuration sont bons.

J'ai rencontré le même problème. La raison pour laquelle j'ai eu le problème était double. Tout d'abord, j'avais accidentellement copié un fichier journal dans le dossier activé par mon site. J'ai supprimé le fichier journal et je me suis assuré que tous les fichiers des sites activés correspondaient aux configurations de site nginx appropriées. J'ai également remarqué que deux de mes hôtes virtuels écoutaient le même domaine. Je me suis donc assuré que chacun de mes hôtes virtuels avait un nom de domaine unique.

Sudo service nginx restart

Ensuite cela a fonctionné.

185
badmadrad

Vous devriez probablement vérifier les erreurs dans /var/log/nginx/error.log.

Dans mon cas, je n'ai pas ajouté le port pour ipv6. Vous devriez aussi faire ceci (si vous utilisez nginx sur un port autre que 80): listen [::]:8000 default_server ipv6only=on;

9
Arvind Bhardwaj

Vérifiez l'option daemon dans le fichier nginx.conf. Il doit être sur. Ou vous pouvez simplement extraire cette ligne du fichier de configuration. Cette option est décrite en détail ici http://nginx.org/en/docs/ngx_core_module.html#daemon

3
zloboid

Dans un cas, vous vérifiez que nginx conserve le port à 80 numéros dans le système par défaut, vérifiez si vous avez un serveur du type Apache ou n’existez aucun élément sur le système bloquant le port à 80 numéros qui a causé le problème.

1.Vous changez le numéro de port sur nginx de cette façon,

Sudo vim/etc/nginx/sites-available/default

Changer 80 à 81 ou quoi que ce soit,

  1. Vérifiez que tout va bien,

Sudo nginx -t

  1. Redémarrer le serveur

Sudo service nginx start

  1. Vérifiez le statut de nginx:

Statut Sudgin service nginx

J'espère que ça va marcher

3
Zahid Rahman

Dans votre /etc/nginx/nginx.conf fichier que vous avez:

include /etc/nginx/site-enabled/*;

Et probablement le chemin que vous utilisez est:

/etc/nginx/sites-enabled/default

Notez les s s manquants sur le site.

3
DanielBlanco

1. Vérifiez vos fichiers de configuration en exécutant la commande susmentionnée: Sudo nginx -t.

2. Vérifiez les conflits de ports. Par exemple, si Apache2 (ps waux | grep Apache2) ou tout autre service utilisant les mêmes ports configurés pour nginx (disons le port 80), le service ne démarre pas et échouera en silence (euh ... le cousin de mon ami a eu ce problème ...)

0
gtamorim

Pour ce que ça vaut: J'ai juste eu le même problème, après avoir édité le nginx.conf fichier. J'ai essayé et essayé de le redémarrer en commandant Sudo nginx restart et diverses autres commandes. Aucun d'entre eux n'a produit de sortie. Commandant Sudo nginx -t pour vérifier le fichier de configuration a donné la sortie Sudo: nginx: command not found, ce qui était déroutant. Je commençais à penser qu'il y avait des problèmes avec le chemin.

Enfin, je connecté en tant que root (Sudo su) et commandé Sudo nginx restart. Maintenant, la commande affiche un message d'erreur concernant le fichier de configuration. Après avoir résolu ce problème, il a redémarré avec succès.

0
Teemu Leisti

J'ai eu exactement le même problème avec mon instance. Mon problème était que j'ai oublié d'autoriser le port 80 à accéder au serveur. Peut-être que c'est votre problème aussi?

Vérifiez auprès de votre WHM et assurez-vous que le port est ouvert pour l'adresse IP de votre site.

0
Kousha