Приложение Rails, развернутое с Passenger, просто отображает индекс общедоступного каталога приложения - PullRequest
3 голосов
/ 19 января 2010

Я пытаюсь развернуть приложение Rails в Ubuntu 9.04 с помощью Passenger.

Насколько я вижу, у меня все настроено правильно; однако, когда я указываю свой браузер на свой домен, все, что я вижу, - это индекс общедоступного каталога приложения.

Я догадываюсь, что Passenger не запускается - в нижней части just-plain-folks.co.uk вообще нет ссылки на Passenger. В лог-файлах нет ничего интересного.

Это мой конфиг:

/etc/apache2/mods-enabled/passenger.conf

<IfModule passenger_module>
   PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9
   PassengerRuby /usr/bin/ruby1.8
</IfModule>

/etc/apache2/mods-enabled/passenger.load

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/ext/apache2/mod_passenger.so

/etc/apache2/sites-enabled/just-plain-folks.co.uk

<VirtualHost *:80>
    ServerAdmin admin@just-plain-folks.co.uk
    ServerName just-plain-folks.co.uk
    ServerAlias www.just-plain-folks.co.uk
    DocumentRoot /srv/www/just-plain-folks.co.uk/public_html/
    ErrorLog /srv/www/just-plain-folks.co.uk/logs/error.log
    CustomLog /srv/www/just-plain-folks.co.uk/logs/access.log combined
</VirtualHost>

/srv/www/just-plain-folks.co.uk/public_html/ - это ссылка на публичный каталог моего приложения


Если есть что-то еще, что может пригодиться для диагностики этого, дайте мне знать. Любая помощь очень ценится!

Ответы [ 3 ]

3 голосов
/ 20 января 2010

Попробуйте отключить символическую ссылку и указать прямо как public. Я полагаю, что пассажир - это немного волшебства в этой области относительно того, как он обнаруживает приложение rails.

Даже если источник символической ссылки был назван public, я подозреваю, что он все равно будет искать rails_root в /srv/www/just-plain-folks.co.uk/.

0 голосов
/ 28 января 2014

Ну, у меня была похожая проблема с Синатрой, Phusion Passenger и Apache. Мой публичный каталог был вложен где-то глубоко, и то же самое было и с каталогом views.

Итак, следующие настройки сделали мое приложение запущенным.

  • В конфигурационном файле apache вместо /home/me/projects/fantasy-app/somewhere/nested/public мне просто нужно было использовать /home/me/projects/fantasy-app/public в директивах DocumentRoot и <Directory>.
  • В моем app.rb, к которому относится onfig.ru, у меня было следующее:

    set :public_folder, 'build/development/public'
    set :views, Proc.new { File.join(root, "build/development/views") }
    
0 голосов
/ 19 января 2010

(Обновлено: я пропустил тот факт, что вы пытаетесь служить из докрута)

Попробуйте отключить MultiViews

<VirtualHost *:80>

  ...

  <Directory /srv/www/just-plain-folks.co.uk/public_html>
      Allow from all
      Options -MultiViews
  </Directory>

</VirtualHost>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...