発生している不具合
ブラウザ(FireFox)から自分のRailsアプリにアクセスした時、ブラウザがCSSを取得できません。
#原因
Railsアプリがpublic/assets/
以下にコンパイル下CSSとは異なるハッシュ値を持つCSSを取得しようとしています。
Railsアプリのpublic/assets/以下にあるアセット
$ ll public/assets/ 合計 696 -rw-rw-r-- 1 user user 163421 5月 3 18:35 application-0dd14ea810a9a9f111e88c69962ed50c26c4085901676932f240028f91a60c14.css -rw-rw-r-- 1 user user 22914 5月 3 18:35 application-0dd14ea810a9a9f111e88c69962ed50c26c4085901676932f240028f91a60c14.css.gz -rw-rw-r-- 1 user user 194719 5月 3 14:25 application-5f082fa70a9347cd5f17ebdf6bd6f20993c0c88ca9b538372485f0b045ca95b6.css -rw-rw-r-- 1 user user 26226 5月 3 14:25 application-5f082fa70a9347cd5f17ebdf6bd6f20993c0c88ca9b538372485f0b045ca95b6.css.gz -rw-rw-r-- 1 user user 204094 5月 3 18:35 application-a58b45bd0659f153db76e7cb4d707faf3d96582c6c41480688fae2e1a4f7e55b.js -rw-rw-r-- 1 user user 62687 5月 3 18:35 application-a58b45bd0659f153db76e7cb4d707faf3d96582c6c41480688fae2e1a4f7e55b.js.gz -rw-rw-r-- 1 user user 738 5月 3 14:25 application-db23349a486402659846f299fc1ac74a98361ddec460199a96320882481d4941.scss -rw-rw-r-- 1 user user 6046 5月 3 14:25 no_image_large-e1a743df0c155237d2677a50919e83279a8002ff93f24727582e52ffb2347dd1.png -rw-rw-r-- 1 user user 2905 5月 3 14:25 no_image_medium-69fb9c0036fc0459ade88e40362eddaf9c5ed51ae7490b79ad18c5ff6b8ef228.png -rw-rw-r-- 1 user user 680 5月 3 14:25 no_image_small-fd2971013ffbd45bb696641ae49e561eba7e6870bb7957e6c1d96373992a5dd9.png -rw-rw-r-- 1 user user 632 5月 3 14:25 show-7f8bf9e40c79c1c50e888e8bbb7af67fb1c55eec838668155ed93688c874e40e.css -rw-rw-r-- 1 user user 322 5月 3 14:25 show-7f8bf9e40c79c1c50e888e8bbb7af67fb1c55eec838668155ed93688c874e40e.css.gz
Firefoxが取得しようとしているCSS
開発者ツールから確認しました。
要求URLを確認すると"assets/application-1e6b~~"という名前のCSSを取得しようとしているようですが、そのような名前のCSSファイルはコンパイルされていません。
(ついでにjsファイルでも同様の不具合が発生しています)
質問内容
なぜ存在しないCSSファイルを取得しようとしているのでしょうか?
どうすれば正しい名前のファイルを取得するようにできますか?
ソースコード
ruby
1# config/initializwers/assets.rb 2Rails.application.config.assets.version = '2.0' 3Rails.application.config.assets.paths << Rails.root.join('node_modules') 4Rails.application.config.assets.precompile =+ %w( show.css )
試したこと
- Firefoxのキャッシュ削除
rake tmp:cache:clear
してからrake assets:clean
し、rake assets:precompile
で再コンパイル- Webサーバ(Nginx)の再起動
環境情報
- ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
- Rails 5.2.3
- nginx/1.12.2 built by gcc 7.3.1 20180303 (Red Hat 7.3.1-5)
- Firefox 66.0.3(64bit) Mozilla Firefox for Ubuntu
- unicorn 5.4.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。