LoginSignup
1
1

More than 3 years have passed since last update.

AWSデプロイ後、画像が表記されない問題について

Last updated at Posted at 2020-10-12

本番環境にアクセスしたらCSSがかかっていない。。。そんな時に解消した自分の解決法を備忘録に残します。画像の場所はapp/assets/imagesです

解決策1 CSSファイルの拡張子の後ろに.SCSSを付け足す

しかしこれでも解決しませんでした。人によってはこれだけいけたという人も聞きます。

解決策2 CSS.SCSSの表記を見直す

僕の場合、表記が
background-image: url(/assets/画像名);

だったのを
background-image: image-url("画像名");

に変更後

$ git pull origin master

で反映させる。しかしこれでも適用されず

解決策3 コンパイルし直す

https://qiita.com/yoheism42/items/dcf71691ca3e8dfc26c5
ここの記事を参考に

$ find app/assets/ -type f -exec touch {} \;
$ rake assets:clobber assets:precompile
$ RAILS_ENV=production rake assets:precompile

を試す。そうすると2行目のコマンドで

========================================
  Your Yarn packages are out of date!
  Please run `yarn install --check-files` to update.
========================================

こんなエラー。これに対しては
$ yarn upgrade

その後またさっきの3行のコマンドを初めから試す。そうすると今回は弾かれずにすんなりいった。

最後に

$ sudo systemctl start nginx
$ sudo systemctl reload nginx

の順に実行してエンジンエックス再起動

その後

$ ps aux | grep unicorn
$ kill 1376   ←unicorn masterの行の一番左端の数字
$ RAILS_SERVE_STATIC_FILES=1 unicorn_rails -c config/unicorn.rb -E production -D

これでなんとか画像を表示させることに成功しました。

長かった・・・

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1