Nginx 1.5.1 с поддержкой spdy, пассажиром и php

Вам нужен доступ к консоли машины Linux для запуска ssh сервиса снова - это может вовлечь Вас регистрирующий билет с Вашим поставщиком услуг хостинга. Перезагрузка не может зафиксировать это - если сервис не установлен запуститься на начальной загрузке.

1
задан 8 June 2013 в 22:24
1 ответ

Когда я первоначально разместил это, я пытался сэкономить время, идущее по этому пути для установки, только чтобы она не работала. Через пару дней я просто попробовал, и это сработало. Я сделал следующее:

Создал пользователя, из которого фактически установил пассажир. Я подозреваю, что для этого можно использовать root , но я создал отдельного пользователя уровня администратора с именем пассажира . Я также отключил весь удаленный доступ для этого пользователя.

sudo useradd -m -s /bin/bash passenger

Переключитесь на нового пользователя пассажир , установите rvm и используйте его для установки моего предпочтительного default ruby ​​( 1.9.3-stable ):

su - passenger
curl -L https://get.rvm.io | bash
rvm install 1.9.3

Установите пассажир и модуль apache:

gem install passenger
passenger-install-apache2-module

Добавьте файлы мода пассажира в / etc / apache2 / mods-available ... Файл .load :

# /etc/apache2/mods-available/passenger.load
LoadModule passenger_module /home/passenger/.rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5/libout/apache2/mod_passenger.so

Файл .conf :

# /etc/apache2/mods-available/passenger.conf

PassengerRoot /home/passenger/.rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5
PassengerDefaultRuby /home/passenger/.rvm/wrappers/ruby-1.9.3-p429/ruby
PassengerUserSwitching on
PassengerDefaultUser www-data
PassengerDefaultGroup www-data

# Any other global-only configuration

Затем я включил модуль и запустил тест конфигурации с последующей перезагрузкой в ​​случае успеха

sudo a2enmod passenger
sudo apache2ctl configtest
sudo service apache2 graceful # if Syntax Ok from previous command

После этого я настроил свой виртуальный хост по мере необходимости ... пример:

<VirtualHost *:80>
    ServerName appname.yourdomain.com
    ServerAdmin appuser@yourdomain.com
    DocumentRoot /home/appuser/path/to/doc/root

    PassengerSpawnMethod smart
    PassengerPoolIdleTime 300
    PassengerMaxRequests 500
    PassengerStatThrottleRate 5
    PassengerMinInstances 2
    PassengerRuby /home/appuser/.rvm/rubies/ruby-1.9.3-p429/bin/ruby

    <Directory "/home/appuser/path/to/doc/root">
        Options Indexes -ExecCGI FollowSymLinks -MultiViews
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Поскольку PassengerUserSwitching является на , а PassengerRuby принадлежит другому пользователю, пассажир автоматически запустит приложение от имени этого пользователя : группа . Однако есть определенные директивы для пассажиров, которые вы можете использовать для настройки пользователя и группы на уровне vhost. Должны ли они соответствовать владельцу PassengerRuby , я точно не знаю.

Статьи / документы, которые помогли:

  1. Несколько Rubies с одним Passenger
  2. Как установить Redmine на Ubuntu 11.
0
ответ дан 4 December 2019 в 09:09

Теги

Похожие вопросы