Rails应用程序在开发模式下不显示index.html

时间:2013-09-08 13:54:05

标签: ruby-on-rails ruby-on-rails-4 webrick

我已将index.html文件放在我的Rails 4应用程序的public目录中,但它仍然将此已删除的文件显示为rails欢迎页面。我在开发模式下使用Webrick。我有另一个应用程序几乎相同的设置,工作正常。

3 个答案:

答案 0 :(得分:3)

如上所述,Rails 4删除了/ public文件夹中的默认index.html页面。如果您想要实现该功能,则必须手动呈现页面。只需创建一个控制器,并在您选择的控制器操作中呈现索引页面,如下所示:

def index
  render :file => 'public/index.html' and return
end

编辑: 如果要在不使用Rails堆栈的情况下提供文件,则必须配置Web服务器(Apache / Nginx /等)。 NginxApache的配置。 此外,您必须通过将serve_static_assets设置为false:

来禁用配置中的Rails静态文件呈现
config.serve_static_assets configures Rails itself to serve static assets. Defaults
to true, but in the production environment is turned off as the server software (e.g.
Nginx or Apache) used to run the application should serve static assets instead.
Unlike the default setting set this to true when running (absolutely not recommended!)
or testing your app in production mode using WEBrick. Otherwise you won´t be able use
page caching and requests for files that exist regularly under the public directory
will anyway hit your Rails app.

因此,如果您想在开发模式下使用它,请在config.serve_static_assets中将environments/development.rb设置为false。

答案 1 :(得分:1)

答案 2 :(得分:0)

在导航器中按F5,索引可以在缓存中。