ruby-on-rails – 为什么“rails server -e production”使它“没有路由匹配”/“和样式表不加载?

它正在运行Rails 3.0.0或Rails 3.0.5(使用 Ruby 1.9.2)

处于开发模式

rails server

那么http://localhost:3000的工作都很好,http://localhost:3000/foos将加载一个stylesheet.css

但是当它是

rails server -e production

那么现在突然,http://localhost:3000给了:

No route matches "/"

http://localhost:3000/foos可以运行,但是stylesheet.css没有加载,并在浏览器中打开它显示

No route matches "/stylesheets/scaffold.css"

生产与发展需要特殊路线吗? (还是因为其他原因?)

解决方法

你需要设置
config.serve_static_assets = true

在config / environments / production.rb中.这可能已经在那里被注释了.

认情况下,Rails在生产中不会自动提供静态文件,因为Nginx或Apache等完整的Web服务器将自动为它们提供服务.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...