11

サーバーを本番環境に切り替えましたが、画像を読み込めません。開発モードではすべて正常に機能しますが、本番環境に切り替えるとすべて機能しなくなり、server_static_assetsを有効にしましたが、それでも何も機能しません。これを行うための助け

4

3 に答える 3

25

ここにあなたが抱えているかもしれないいくつかの問題があります:

1-本番構成が正しくない可能性があります。これは、3.1の初期リリース候補から始めて、途中で更新している場合に特に発生する可能性があります。Production.rbに推奨されるオプションは、rc4と3.1.0リリースの間でかなり変更されました。

Production.rbの設定に次のものが含まれていることを確認してください。

# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = false
# Generate digests for assets URLs
config.assets.digest = true

2-アセットをプリコンパイルするのを忘れた可能性があります

RAILS_ENV=production rake assets:precompile

3-production.rbの変更を取得するためにWebサーバーを再起動するのを忘れた可能性があります。

于 2011-09-08T00:34:54.530 に答える
1

rake assets:precompile実稼働環境で実行することを忘れないでください。

Capistranoを使用してデプロイする必要がある場合は、次のレシピを使用できます。

before "deploy:symlink", "assets:precompile"

namespace :assets do
  desc "Compile assets"
  task :precompile, :roles => :app do
    run "cd #{release_path} && rake RAILS_ENV=#{rails_env} assets:precompile"
  end
end
于 2011-09-09T22:04:15.467 に答える
1

Rails 4にアップグレードする場合、または現在本番環境で使用していて、cssからイメージをロードしている場合は、次のようにします。

それ以外の

background-image: url('some_image.jpg');

行う

background-image: image-url('some_image.jpg');

参考のためにhttp://guides.rubyonrails.org/asset_pipeline.html#css-and-sassを参照してください

于 2015-05-25T21:27:17.553 に答える