29997


Rails5への移行を行っている途中に以下のようなエラーに出くわしました。

[code]

    RAILS_ENV=test be rake db:migrate
    DEPRECATION WARNING: `config.serve_static_files` is deprecated and will be removed in Rails 5.1.
    Please use `config.public_file_server.enabled = true` instead.
    
[/code]

エラー内容に従って修正した所エラーは消えましたが、`serve_static_files` と
`public_file_server.enabled`が静的ファイルに関する具体的にどのような振る舞いを指定しているのか検索してもわかりませんでした。

この2つの設定はなんのためにあり、どう変更されたのでしょうか？


CC BY-SA 3.0
2016-10-27T22:27:10.460
29951
2016-10-30T11:40:57.967
3271
question
ruby-on-rails ruby
serve_static_files と public_file_server.enabled の意味


どちらも、静的ファイルを `/public` ディレクトリから読むかどうか、という設定のようですが、

> DEPRECATION WARNING: The configuration option `config.serve_static_assets`
> has been renamed to  
>  `config.serve_static_files` to clarify its role (it merely enables serving
> everything in  
>  the `public` folder and is unrelated to the asset pipeline). The
> `serve_static_assets` alias  
>  will be removed in Rails 5.0. Please migrate your configuration files
> accordingly.  
>  <https://github.com/heroku/rails_serve_static_assets/issues/11>

`serve_static_assets`
という設定名だったけど、`public`ディレクトリを使うかどうかの設定って`assets`関係なかったから`server_static_files`
という名前にした。

Rails5 では、さらに明確な名前を変更した、ということのようですね。

> config.public_file_server.enabled configures Rails to serve static files
> from the public directory.  
>  [Configuring Rails Applications — Ruby on Rails
> Guides](http://guides.rubyonrails.org/configuring.html#rails-general-
> configuration)


CC BY-SA 3.0
2016-10-30T11:40:57.967
29997
2016-10-30T11:40:57.967
7471
29951
answer