サーバーを再起動しようとすると、エラーが発生します。これを修正する方法がわかりません。
deploy@user:~$ Sudo nginx -s reload
nginx: [emerg] unknown directive "passenger_root" in /etc/nginx/nginx.conf:66
これらの行を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;
私も同じことに遭遇しました。 Phusion Passengerのリポジトリではなく、通常Ubuntuで提供されているnginx-extrasパッケージを誤ってインストールしました。 Passengerパッケージには、NginxをモジュールとしてコンパイルしたPassengerがありますが、他のパッケージにはありません。
解決策は、Phusion Passengerのaptリポジトリを追加し、そこからnginx-extrasパッケージをインストールすることです。これを行う方法はLinuxのディストリビューションとバージョンによって若干異なるため、最初にドキュメントを読む必要があります。 https://www.phusionpassenger.com/library/install/nginx/apt_repo/
ドキュメントを読むことが問題である場合は、リポジトリの追加に使用したコマンドを試して、そこからnginx-extrasパッケージをインストールできます。
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
インストールしますnginx-extras
そして、置きます include /etc/nginx/modules-enabled/*.conf;
前 event {...}
セクション。
OS:ubuntu 18.04サーバー
18.04 LTSおよびpassenger 6.0.1。私は https://www.phusionpassenger.com/library/install/nginx/install/oss/bionic/ で公式ガイドをたどり、この問題を解決しました。最後のいくつかの回答が投稿されてから、インストールのプロセスが変更されたようです。
これらのコマンドは、PhusionのAPTリポジトリを通じてPassenger + Nginxモジュールをインストールします。この時点では、システムリポジトリからNginxが既にインストールされていると想定しています。そうでない場合は、先にそれを実行してから続行してください。
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
passenger Nginxモジュールを有効にして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
インストールを確認する
Sudo /usr/bin/passenger-config validate-install