Ошибка 500 от apache + пассажир - PullRequest
1 голос
/ 27 января 2012

Я пытаюсь использовать настройку приложения rails на apache2, используя метод виртуального сервера, откуда, как мне кажется, возникают мои проблемы.Я попытался установить автономную версию для пассажиров (потратив вчерашний день, пытаясь заставить работать Apache), и это работало просто отлично, но я бы хотел использовать apache.

Журнал ошибок Apache показывает:

[Thu Jan 26 22:36:18 2012] [notice] caught SIGTERM, shutting down
[Thu Jan 26 22:36:20 2012] [notice] Apache/2.2.20 (Ubuntu) Phusion_Passenger/3.0.11 configured -- resuming normal operations
cache: [GET /videos] miss

sigterm - это я, перезапускающий apache.Отсутствует кеш, я пытаюсь просмотреть страницу модели.

Настройка виртуального хоста

    <VirtualHost *:80>

    DocumentRoot /home/dave/prodspace/river/public
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /home/dave/prodspace/river/public/>
            Options Indexes FollowSymLinks -MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

    </VirtualHost>

Папка, в которой есть все, - / home / dave / prodspace / river, я установил группуразрешения на www-данные для реки / публичной папки.Я включил сайт и перезапустил apache через sudo a2ensite river sudo service apache2 restart

Системные спецификации: связанные с ruby ​​вещи, установленные с использованием rvm ruby ​​1.9.2p290 passenger 3.0.11 rails 3.2.0 apache 2.2 (установлены через apt-get пакеты) Ubuntu 11.10 (серверная версия x86)

Любая помощь всегда ценится ...

Ответы [ 2 ]

1 голос
/ 11 февраля 2012

Производственная база данных не настроена. Исправление закончилось бегом:

RAILS_ENV=production rake db:create db:schema:load
1 голос
/ 29 января 2012

Мне приходится регулярно заниматься этим на работе.Вот некоторые вещи, которые вступают в игру: (ПРИМЕЧАНИЕ: я использую RVM и для своего разработчика на работе)

  • cd в каталог приложения для проекта
  • Убедитесь, чточто вы установили пассажирский гем (gem install --no-ri --no-rdoc passenger
  • Затем обязательно запустите установку пассажирского модуля apache (rvmsudo passenger-install-apache2-module)
  • Затем вы должны быть уверены, что включили моды apache в вашем / etc / apache2 / mods-enabled
    • Вы хотите, чтобы оба параметра passenger.load & passenger.conf были включены в конфигурацию apache.

Теперь следует отметить, что пассажир не играет хорошо, если вы не добавите здесь немного, как указано здесь здесь .

Создайте новый файл в каталоге config / с именем setup_load_path.rb и вставьте его туда:

if ENV['MY_RUBY_HOME'] && ENV['MY_RUBY_HOME'].include?('rvm')
  begin
    rvm_path     = File.dirname(File.dirname(ENV['MY_RUBY_HOME']))
    rvm_lib_path = File.join(rvm_path, 'lib')
    $LOAD_PATH.unshift rvm_lib_path
    require 'rvm'
    RVM.use_from_path! File.dirname(File.dirname(__FILE__))
  rescue LoadError
    # RVM is unavailable at this point.
    raise "RVM ruby lib is currently unavailable."
  end
end

Теперь перезапустите ваш Apache, и он должен работать, если ваша маршрутизация настроена правильно.

...