私はこのガイドに従おうとしています
このコマンドを実行した後でチュートリアルを続行したい場合:
Sudo apt-get install nginx-extras passenger
私はこのエラーを受け取ります:
Reading package lists... Done
Building dependency tree
Reading state information... Done
passenger is already the newest version.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
nginx-extras : Depends: perlapi-5.18.2 but it is not installable
Depends: libperl5.18 (>= 5.18.2) but it is not installable
Recommends: passenger (< 4.0.60) but 1:4.0.59-1~trusty1 is to be installed
E: Unable to correct problems, you have held broken packages.
Nginx-extrasをインストールできないと思います。誰かが私を助けてくれますか?
Ubuntu 14.10でも同じ問題が発生しました
Sudo nano /etc/apt/sources.list.d/passenger.list
コメントアウトdeb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main
ctrl + x
Y
入る
Sudo apt-get update
Sudo apt-get install nginx nginx-extras
それでいいなら
Sudo nano /etc/apt/sources.list.d/passenger.list
インサートdeb https://oss-binaries.phusionpassenger.com/apt/passenger wheezy main
ctrl + x
Y
入る
Sudo apt-get update
Sudo apt-get install passenger
出来上がり!
Ubuntu 16.04を使用している場合は、次の手順を実行します
# Install our PGP key and add HTTPS support for APT
Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
Sudo apt-get install -y apt-transport-https ca-certificates
# Add our APT repository
Sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger xenial main > /etc/apt/sources.list.d/passenger.list'
Sudo apt-get update
# Install Passenger + Nginx
Sudo apt-get install -y nginx-extras passenger
このエラーが発生したのは、インストールしようとした乗客のバージョンがubuntuのバージョンと一致しなかったためです。あなたがubuntu 14.04にいることを確認してください。
そうでない場合は、deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main
の行/etc/apt/sources.list.d/passenger.list
を、ubuntuのバージョンに合わせて変更する必要があります。
次にSudo apt-get update
を実行します
この問題のため、nginx-full
ではなくnginx-extras
を使用しました。 Postgres 9.4が欲しいので14.10を実行しています。
何度も奇妙なエラーが発生し続け、私は誤ってAPTの指示を過ぎて乗客の指示に従い続けました。おっと。それで、私はもともと@ Maciej-adamczewskiの回答に従っていましたが、彼はUbuntu 14.04インストールの代わりにDebian 7パッセンジャーインストールを追加しています。これは私を台無しにしました。
これが私を並べ替えるためにしたことです:
Sudo apt-mark showhold # apparently I had nothing in here
Sudo apt-get autoclean
Sudo apt-get update && Sudo apt-get upgrade
# I hoped upgrade would get rid of that error re: nginx-extras
# it didn't at all, so decided to scrap and start over
Sudo apt-get purge nginx* # to get rid of everything nginx
Sudo apt-get remove nginx* # paranoia
Sudo apt-get purge passenger
Sudo apt-get remove passenger # paranoia again
Sudo apt-get autoremove
Sudo apt-get update
Sudo apt-get install nginx-full passenger
ブーム! nginxを正常に実行できるようになりました。
Digital Oceanの部分については触れていませんが、Rubyの代わりにRVMを直接インストールした場合は、rvm Rubyがどこにあるかを見つける必要があります:
rvm use
passenger-config --Ruby-command
次に、passenger_Ruby /usr/local/...
と書かれたnginx情報をコピーして貼り付け、/etc/nginx/nginx.conf
ファイルの元のpassenger_Ruby行を上書きします。
後でサイトを作成するときに、nginxのサーバーブロックにpassenger_enabled on;
を追加してください。
この男のマッドプロップ: セットアップRails on DO
多分ubuntuバージョンエラー、このコマンドで試してください:
Sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger xenial main > /etc/apt/sources.list.d/passenger.list'