在heroku上运行rails app,无法在/ public文件夹中看到静态页面

cba*_*ass 13 ruby-on-rails heroku

我有几个静态页面,当在本地运行时作为localhost:3000/foo.html工作,但这一次上传到heroku后不起作用.

我尝试将以下内容添加到routes.rb文件中:

match '/foo', :to => redirect('/public/foo.html')
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用,它将我重定向到foobar.com/public/foo.html,但仍然没有发现任何东西.

Rya*_*gle 40

根据这篇文章,您需要告诉Rails自己提供静态资产:

config.serve_static_assets = true
Run Code Online (Sandbox Code Playgroud)

在你的 config/environments/production.rb

  • 还要确保您没有在 .gitignore 中包含您的公用文件夹。如果只想包含某些文件,则可以忽略公用文件夹并排除要忽略的文件。像:/public/* !/public/404.html (2认同)