«Официальный» способ развертывания нескольких приложений Rail 3.1 с Passenger - PullRequest
2 голосов
/ 15 ноября 2011

В настоящее время я пытаюсь запустить на сервере пару небольших приложений Rails, обычно я использую Heroku, но я решил сделать это на этот раз для практики, и все, что предлагается в Интернете, не работает .

Я перепробовал почти все ресурсы, которые можно найти как в SO, так и в полном руководстве Phusion. Самое близкое, что я могу найти, это «Страница, которую вы искали, не существует». Само приложение работает нормально, когда я запускаю его на сервере script / rails, инициализация нового приложения rails для другого sub_dir работает нормально, но оно позволяет мне использовать только index.html и ничего больше. Так что это похоже на какую-то проблему с маршрутизацией, но когда я попробовал "scope do", он упал на "scope".

Каков на самом деле рекомендуемый и предлагаемый способ иметь несколько рельсовых сайтов на юрисдикции?

Файл конфигурации Apache2

NameVirtualHost *:80
    <VirtualHost *:80>
    ServerName www.cybershrike.co.uk/
    DocumentRoot /web/rails
    <Directory /web/rails>
        Allow from all
    </Directory>

    RailsBaseURI /test
    <Directory /web/rails/test>
        Options -MultiViews
    </Directory>
    </VirtualHost>

    NameVirtualHost *:80
    <VirtualHost *:80>
    ServerName www.cybershrike.co.uk/
    DocumentRoot /web/rails
    <Directory /web/rails>
        Allow from all
    </Directory>

    RailsBaseURI /kinu
    RailsEnv development
    SetEnv RAILS_RELATIVE_URL_ROOT "/kinu"
    PassengerAppRoot /web/rails/kinu
    <Directory /web/rails/kinu/public>
        Options MultiViews Indexes FollowSymLinks
    </Directory>
    </VirtualHost>

1 Ответ

1 голос
/ 16 ноября 2011

Вы пробовали предложенную опцию пассажира по умолчанию?

  RailsBaseURI /kinu
  RailsEnv development
  <Directory /web/rails/kinu/public>
    Options -MultiViews
  </Directory>
</VirtualHost>

Также вы должны убедиться, что разрешение на доступ к файлам позволяет серверу apache (обычно wwwuser) рекурсивно обращаться ко всем файлам, включая / web? И, просто чтобы охватить все базы здесь: вы перезапустили apache?

...