Why does rails precompile task do non-digest asset

2020-07-18 10:56发布

When I do: rake assets:precompile RAILS_ENV=production I get for example the following files in my public/assets folder:

  • application-7af6c31514bcdd4cce3c96892af4487f.js
  • application-7af6c31514bcdd4cce3c96892af4487f.js.gz
  • application.js
  • application.js.gz

The last 2 are a problem because it causes the compiled version to get served in development and I don't understand why they are being generated.

I have the following line in my production.rb:

config.assets.digest = true

2条回答
Deceive 欺骗
2楼-- · 2020-07-18 11:21

To stop the creation of the non-hashed filenames in public use:

rake assets:precompile:primary RAILS_ENV=production
查看更多
别忘想泡老子
3楼-- · 2020-07-18 11:29

This is the normal behaviour of the asset compiler, the non-digest files are generated mainly for use in error pages and the like (where you don't have access to the MD5 hash) and there is currently no way to turn them off. Also, this question is virtually identical to this one: Rails compiles assets both with and without md5 hash, why?

查看更多
登录 后发表回答