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

时间:2012-07-11 19:52:18

标签: ruby-on-rails heroku

我有几个静态页面,当在本地运行时可以作为localhost:3000 / foo.html工作,但是一旦上传到heroku,它就不起作用。

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

match '/foo', :to => redirect('/public/foo.html')

但这似乎不起作用,它将我重定向到foobar.com/public/foo.html,但仍然没有找到任何内容。

2 个答案:

答案 0 :(得分:40)

this article,您需要告诉Rails使用以下内容提供静态资产:

config.serve_static_assets = true

config/environments/production.rb

答案 1 :(得分:0)

这困扰了我几个小时,但这是另一个潜在的解决方案。出于某种原因,我可以在/public/docs中生成文档,但是文档不会加载,即使在生成它之后也是如此。我会运行一个Heroku bash控制台,生成文档,退出,然后重新运行Heroku bash,发现/public不再包含我的docs文件夹。

因此,我找到的唯一解决方案是将文档包含在Git存储库中。这是Heroku在部署和bash实例中持久化/public/docs的唯一方法。

我不知道为什么会这样......我用Heroku开了一张支持票,正在等待回复。

相关问题