ruby – 在生产模式下运行瘦服务器不会加载我的资产

当我像这样加载薄:
thin start -e production

并尝试访问我的一个页面,我在日志输出中得到这个:

cache: [GET /] miss
cache: [GET /assets/main-bd1ef4b153740fb69fd615304b87ad0d.css] miss
cache: [GET /assets/jqModal-8fa734bf4f58524b2799abd73ab7d34f.css] miss
cache: [GET /assets/jquery-544665ba1d5b4f793290421aafed85c9.js] miss
cache: [GET /assets/application-00b97aa2429046c0c43802f07b756b46.js] miss

这些文件存在于public下的assets目录中.

我也运行这个命令:

RALS_ENV=production rake assets:precompile

我试过在浏览器中访问文件/public/assets/application.js,如下所示:

http://localhost:3000/application.js

这给了我一个404错误(即使文件存在于/ public / assets中,但是当我在服务器处于开发模式时向文件发出请求时,可以读取该文件.

有人有主意吗?

解决方法

默认情况下,在生产(config / environments / production.rb)中关闭提供静态文件的Rails:
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false

瘦服务器未配置为提供静态资产,因此对资产的请求失败.

相关文章

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