2

Rails アプリをサーバーにデプロイするのはこれが初めての経験です。ローカルでは問題なく動作しますが、本番用のサーバーに移動しようとすると表示されません。私が得るのは、私のプロジェクトフォルダの画像が表示されていることだけです。何か変更を加える必要がありますか?

以下は、私がすでに行った変更です-database.yml->本番環境が環境を変更しました

この目的のために、Phusion Passenger と Apache を使用しました。同様の状況に直面したことがある人は、私を助けてください。どんな助けでも大歓迎です。前もって感謝します :)

また、実行しようとしているサーバーには、ruby 1.8.7 で実行されているプロジェクトがあります。私のプロジェクトが別のプロジェクトの宝石セットを使用していた場合、2 つのインスタンスがありました。そのため、.rvmrc (現在は廃止されていることがわかっています) を使用して、アプリが使用する必要がある適切な gemset を指す必要がありました。

構成:

<VirtualHost *:80>
  ServerName cloudapp.net
  DocumentRoot /var/www/test1/public
  <Directory /var/www/test1/public>
    Allow from all
    Options -MultiViews
  </Directory>
</VirtualHost>

乗客の構成:

LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p448/gems/passenger-4.0.20/buildout/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p448/gems/passenger-4.0.20
PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-1.9.3-p448/ruby
4

2 に答える 2

0

乗客の構成は問題ないようです。

あなたPassengerDefaultRubyは を指してい1.9.3-p448ます。を使用していると思われる理由は何1.9.3-p225ですか?

を使用しているRVMため、これらのコマンドを実行して、パッセンジャーの正しい ruby​​ パスを見つけます。

rvm use 1.9.3
passenger-config --ruby-command

次に、コマンドの出力を使用してVirtualHostブロックに次の行を追加し、アプリケーションが特定のバージョンの ruby​​ を使用するように強制します。

PassengerRuby /path/to/ruby/1.9.3/

注: これは、PassengerDefaultRuby既に定義したものに追加されます。(PassengerRubyのドキュメントを参照)

このコマンドを実行して、フォルダーのアクセス許可を確認します

passenger-config --root

Logging と Debuggingをアクティブにして、パッセンジャーが正確に何をしているかを確認します

于 2013-10-16T05:28:20.387 に答える