2012-01-27 8 views
1

私は、問題を引き起こしていると思われる仮想サーバ方式を使用して、apache2上のrailsアプリケーションをセットアップしようとしています。私はスタンドアロンの旅客をインストールしようとしました(昨日の午後にApacheの作業をしようとした後)、うまくいきましたが、私はApacheを使いたいと思います。apache +パッセンジャーから500エラー

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> 

すべては/ホーム/デイヴ/ prodspace /川で入っているフォルダ、私は川/パブリックフォルダのWWW-データにグループのアクセス権を設定しています。 ルビー関連のものはRVM ルビー1.9.2p290 乗客3.0.11 レール3.2.0 Apacheを使用してインストール:私は

システムの仕様があるサイトを有効にして sudoをa2ensite apacheの経由を再起動川 sudoのサービスapache2の再起動しています(apt-getのパッケージでインストール)2.2 のubuntu 11.10(x86サーバ版)

すべてのヘルプは常に高く評価され...

答えて

1

運用データベースがセットアップされていません。あなたのアプリケーションは、デバッグ目的でDEVモードで実行し、あなたの 体にこれを追加したい場合は、また

RAILS_ENV=production rake db:create db:schema:load 
1

は、私は私の仕事で定期的にこれに対処する必要があります。次のようにここに遊びに来ていくつかあります:(注:私も仕事で私のdevのためにRVMを使用)

  • CDプロジェクト
  • 用アプリのディレクトリにあなたは乗客がインストールされていることを確認してくださいGEM(ジェムインストールApacheのモジュール乗客を実行するために、より確実にする次に、--no-riの--no-rdocの旅客
  • をインストール(rvmsudo旅客インストール-のapache2-モジュール)
  • 次にあなたが有効にしてくださいにしたいですあなたの/ etc/apache2/mods-enabledのapache mods
    • あなたはパスsenger.load & passenger.confが両方ともあなたのApache設定で有効になっています。今

、あなたが参照さhereとしてここに追加少しを実行しない限り、乗客が素敵に再生されないことに留意すべきです。

setup_load_path.rbと呼ばれるあなたのconfig /ディレクトリに新しいファイルを作成し、そこにこれを貼り付けます。あなたのルーティングが正しく設定されている場合

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を再起動し、それが動作するはず。

+0

:修正が実行されてしまいました。 RailsEnvの開発 – Skittles

+0

apache2にpassenger.loadまたはpassenger.confという行が表示されませんでした。conf、and passengerはmods-enabledまたはmods-availableのリストには含まれていませんでした。 私は乗客3.0.11をインストールしていますが、私はpassenger-install-apache-moduleを実行して、3行をコピーしてapache2.confに追加しました。 – dave

+0

この行をapache2.confにコピーした場合は、mods対応のものについて心配する必要はありません。これの重要な側面は、setup_load_path.rbファイルです。これは、乗客があなたがインストールしたgemsetの代わりにシステムのルビーとレールを使用しようとするためです。 'gem list'の出力を貼り付けることはできますか? – Skittles