Подтвердить что ты не робот

Вопросы Nginx и пассажирских зависимостей (Digital Ocean Deployment)

Я пытаюсь следовать этому руководству

https://www.digitalocean.com/community/tutorials/how-to-deploy-a-rails-app-with-passenger-and-nginx-on-ubuntu-14-04

Когда я хочу перейти к руководству после запуска этой команды:

sudo apt-get install nginx-extras passenger

Я получаю эту ошибку:

Чтение списков пакетов... Готово Построение дерева зависимостей

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, Кто-нибудь может мне помочь?

4b9b3361

Ответ 1

У меня была та же проблема на 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

тогда если ok

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

Voila!

Ответ 2

Если вы используете 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

Ответ 3

Когда я получил эту ошибку, это было потому, что версия пассажира, которую я пыталась установить, не соответствовала версии 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

Ответ 4

Я использовал nginx-full вместо nginx-extras из-за этой самой проблемы. Я запускаю 14.10, потому что хочу Postgres 9.4.

Было множество странных ошибок, которые я продолжал получать, и я случайно продолжал следовать указаниям Пассажира, которые были переданы инструкциям APT. Упс. Поэтому я изначально следовал за ответом @Maciej-adamczewski, но он добавляет установку Debian 7 вместо установки Ubuntu 14.04. Это перепутало меня.

Вот что я сделал, чтобы меня отсортировали:

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

Boom! Для правильной работы nginx.

Он не говорит о куске Digital Ocean, но если вы установили RVM вместо рубина напрямую, вам нужно выяснить, где находится ваш rvm ruby:

rvm use
passenger-config --ruby-command

И затем скопируйте вставку информации nginx, которая говорит passenger_ruby /usr/local/..., и переопределите исходную строку_диски в файле /etc/nginx/nginx.conf.

Позже, когда вы создаете сайты, убедитесь, что вы добавили passenger_enabled on; в свой серверный блок для nginx!

безумный реквизит этого чувака: Настройка рельсов на DO