サポート #64
未完了top.scssに追記したら、画面が表示されなくなりました。
0%
説明
top.scssに、以下のような追記をしたら、どうやらscssがcssに変換されていないようでエラーになりました。
ローカル環境では、rails s -b 0.0.0.0.0 で起動して使用していましたが、問題がありませんでした。
AWSでは、SCSSファイルを更新した場合、どのようにしたらよいでしょうか?
エラー画面
ログ内容
ファイル
阿良田 燎 さんが4ヶ月前に更新
- カテゴリ を 共通 にセット
- ステータス を 新規 から 進行中 に変更
railsのアプリケーションサーバーでは静的ファイルをコンパイルしてpublic配下に置く必要があります(ローカル環境だと勝手にやってくれる) そのため、cssの変更を実施して際には、 rails assets:precompile RAILS_ENV=production というコマンドを実施してくださいませ。 その際にエラーが発生して最後まで完了しないかと思いますが、cssや画像ファイルのコンパイルは終わると思いますので、生成されたファイルをcommitしていただいて、本番にてpullしてください。
深井 篤 さんが4ヶ月前に更新
- ファイル clipboard-202501281824-gxew3.png clipboard-202501281824-gxew3.png を追加
- ファイル clipboard-202501281828-ya3mz.png clipboard-202501281828-ya3mz.png を追加
- ファイル 画像.png 画像.png を追加
@阿良田 燎 さん
お世話になっております。
改めまして、CSSファイルをローカルでコンパイルし、
生成されたファイルをgitを通して、
AWSサーバーに配置しましたが、上記エラーが解消されませんでした。
他に抜けている手順などございましたら、
ご指摘のほど、よろしくお願い致します。
◆手順
1)ローカルの開発環境でCSSをコンパイル
2)生成されたファイルをgitブランチにコミット(プッシュ)
3)AWSにログイン
4)管理ユーザーに変更 (sudo su -)
5)プロジェクトディレクトリまで移動 (cd /usr/local/app/line_interface_app)
6)git pull (git pull origin dev_production_landsystem)
7)ソースコードの変更内容にDBの更新 (rails db:migrate RAILS_ENV=production)
8)アプリケーションサーバー再起動(AWSサーバー)(bundle exec rake unicorn:restart RAILS_ENV=production)
9)ブラウザよりURLを叩く (https://welticket-landsystem.rfront.jp/company)
→上記エラーと同じエラーが表示される
◆エラー画面
◆ログファイルの内容(production.log)
◆修正箇所
admin画面などに影響させないように、以下の部分を今回変更しました
ローカル環境では動作しています
阿良田 燎 さんが4ヶ月前に更新
ごめんなさい、こちら見落としていたのですが、
<%= stylesheet_link_tag 'company/top', media: 'all', 'data-turbolinks-track': 'reload' %>
こちらの表記は
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
に戻していただければ動くと思います。
railsでは読み込む対象のCSSをapp/assets/application.cssで管理するような作法になっており、現在の設定ですと、application.css上で、assets配下の全てのcssファイルを読み込む挙動になっているかと思います。
そのため、個別に読み込む対象のファイルをhtml上に記載しなくて大丈夫です(逆にそのために、CSSのバッディングもよく発生します)