web-dev-qa-db-fra.com

Directive Nginx inconnue pour passager_root

Je rencontre une erreur lorsque j'essaie de redémarrer le serveur. Je ne sais pas comment résoudre ce problème. 

deploy@user:~$ Sudo nginx -s reload
nginx: [emerg] unknown directive "passenger_root" in /etc/nginx/nginx.conf:66

J'ai ajouté ces lignes au fichier de configuration nginx '/etc/nginx/nginx.conf'

passenger_root /home/deploy/.rvm/gems/Ruby-2.0.0-p353/gems/passenger-4.0.37;
passenger_Ruby /home/deploy/.rvm/gems/Ruby-2.0.0-p353/wrappers/Ruby;
16
Papouche Guinslyzinho

J'ai rencontré la même chose. J'avais accidentellement installé le paquet nginx-extras normalement fourni par Ubuntu, plutôt que celui fourni par le référentiel de Phusion Passenger. Le paquet Passenger contient Passenger compilé avec Nginx en tant que module, contrairement à l'autre paquet.

La solution consiste à ajouter le référentiel apt de Phusion Passenger, puis à installer le paquet nginx-extras à partir de celui-ci. La méthode utilisée varie légèrement selon la distribution et la version de Linux. Vous devez donc commencer par lire la documentation: https://www.phusionpassenger.com/library/install/nginx/apt_repo/

Si la lecture de la documentation vous pose problème, vous pouvez essayer les commandes que j’ai utilisées pour ajouter le référentiel et installer le paquet nginx-extras à partir de celui-ci.

Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
Sudo apt-get install -y apt-transport-https ca-certificates
Sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main > /etc/apt/sources.list.d/passenger.list'
Sudo apt-get update
Sudo apt-get install -y nginx-extras
21
Adam

Je suis installer nginx-extras et mettre include /etc/nginx/modules-enabled/*.conf; avant la section event {...}.

OS: serveur Ubuntu 18.04

5
ricsdeol

Aucune des réponses sur cette page ne m’a aidé avec 18.04 LTS et passager 6.0.1 . J'ai suivi le guide officiel sur https://www.phusionpassenger.com/library/install/nginx/install/oss/bionic/ et le problème a été résolu pour moi. Il semble que le processus d’installation ait changé depuis la publication des dernières réponses.

Ces commandes installeront le module Passenger + Nginx via le référentiel APT de Phusion. À ce stade, nous supposons que Nginx est déjà installé à partir de votre référentiel système. Sinon, vous devriez le faire avant de continuer. 

Sudo apt-get install -y dirmngr gnupg
Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
Sudo apt-get install -y apt-transport-https ca-certificates

Sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main > /etc/apt/sources.list.d/passenger.list'
Sudo apt-get update

Sudo apt-get install -y libnginx-mod-http-passenger

activer le module Passenger Nginx et redémarrer Nginx

if [ ! -f /etc/nginx/modules-enabled/50-mod-http-passenger.conf ]; then Sudo ln -s /usr/share/nginx/modules-available/mod-http-passenger.load /etc/nginx/modules-enabled/50-mod-http-passenger.conf ; fi

Sudo ls /etc/nginx/conf.d/mod-http-passenger.conf

Vérifier l'installation

Sudo /usr/bin/passenger-config validate-install
1
SkyNT