Rails/Nginx 不服务 JS 和 CSS

2024-01-15

我通过 Capistrano 将 Rails 3.2.8 应用程序部署到我的 Linode 服务器,并启用了资产管道。

它正在运行 nginx + unicorn。

当我访问我的应用程序时,最小化的 JS 和 CSS 没有被提供,尽管资产存在于<RAILS_DIR>/public/assets.

$ tree assets
assets
|-- application-66e477d6fd8cf088e8be44affeead089.css
|-- application-66e477d6fd8cf088e8be44affeead089.css.gz
|-- application-7d3ead38a0b5e276a97d48e52044ac31.js
|-- application-7d3ead38a0b5e276a97d48e52044ac31.js.gz

在我的应用程序中,我可以看到没有找到那些确切的文件:

这是我的 nginx 配置:

server {
  listen 80 default deferred;
  server_name me.example.com;
  root /home/kennym/apps/app/current/public;

  location ^~ /assets/ {
    add_header Last-Modified "";
    add_header ETag "";
    gzip_static on;
    expires max;
    add_header Cache-Control public;
  }

  try_files $uri/index.html $uri @unicorn;
  location @unicorn {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://unicorn;
  }

  error_page 500 502 503 504 /500.html;
  client_max_body_size 4G;
  keepalive_timeout 10;
}

你能猜出出了什么问题吗?


location ^~ /assets/应该location ~ ^/assets/.

前者是与/资产/不匹配,后者是匹配以 /assets/ 开头的模式

更新您的 nginx 配置以使缓存和预压缩文件服务再次正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails/Nginx 不服务 JS 和 CSS 的相关文章

  • Bootstrap shown.bs.tab 事件不起作用

    我正在使用灵活的模板 http the8guild com themes html flexy v1 7 stylesPage html 使用引导程序 并且我无法让选项卡上的 shown bs tab 事件正常工作 我已经成功让它发挥作用J
  • 如何从模型调用辅助方法?

    我使用 MongoDB 作为我的 Rails 应用程序中的数据库和 MongoID gem 我想从模型中调用辅助方法after create回调方法 这怎么可能 我的模型代码是 class Department include Applic
  • 如何在 Ruby on Rails 中不使用 eval 将字符串转换为哈希值? [复制]

    这个问题在这里已经有答案了 这里是string需要转换成hash status gt label gt Status collection gt return misc definitions project status 我们不能使用ev
  • Postgres 使用 Rails Active Record 在 IN 列表中 ORDER BY 值

    我收到按 收入 排序的 UserId 列表 一次大约 1000 个 我在 我的系统数据库 中有用户记录 但 收入 列不存在 我想从 我的系统数据库 中检索用户 按照列表中收到的排序顺序 我尝试使用 Active Record 执行以下操作
  • Googlebot 收到现有模板缺少模板错误

    在过去的几天里 当谷歌机器人尝试访问我们的主页 欢迎 索引 时 我们开始收到缺少模板的错误 我已经盯着这个看了几个小时 知道我只是错过了一些简单的东西 A ActionView MissingTemplate occurred in wel
  • 如何覆盖 Ruby Ranges 的 .. 和 ... 运算符以接受 Float::INFINITY?

    我想覆盖 and Ruby 中的运算符Range 原因是 我正在处理数据库中的无限日期范围 如果你拉一个infinty从 Postgres 中取出日期时间 你会得到一个Float INFINITY在红宝石中 问题是 我无法使用Float I
  • Ruby on Rails - 设计注册链接不起作用 - 未定义方法“user_registration_path”

    这个问题之前已经报告过 但我仍然无法找到解决方案 我已将插件 Devise 安装到我的新 RoR 项目中 当我点击注册链接时 我被重定向到以下路线 http localhost 3000 users registration sign up
  • ApplicationController 的未定义方法“helper_method”,Rails 5

    我正在尝试使用doorkeeper 将oAuth2 0 集成到我的仅rails api 应用程序中 但我不断收到此错误 ApplicationController 的未定义方法 helper method 但无法找到解决该问题的明确解决方案
  • Mongoid 中的 find_or_create_by 线程安全吗?

    我有一个使用 Mongoid 的 find or create by 方法的网络应用程序 poll Poll find or create by fields 在投入生产之前 我尝试运行故障场景 我发现多个用户可以尝试使用此方法访问此资源
  • 如何在 Rails 3.2.1 版本中注释 Rails 模型

    我正在尝试遵循一些在线教程来在 Rails 中注释我的模型 然而 似乎所有教程都在谈论过时的注释版本或不正确的安装 这真是一团糟 到目前为止我已经尝试过以下方法 1 在 Gemfile 中添加此内容 gem annotate 2 4 0 2
  • 如何在 Rails 控制器中调用通道方法?

    我有一个订阅用户的 ActionCable 方法 如果启动新的 convo 我也希望用户订阅新频道 我无法找出在控制器中调用通道方法的正确语法 更新 问题是消息在发送时附加到聊天框 但是当发送第一条消息时 Websocket 连接尚未建立
  • 获取设备中的当前用户ID

    如何使用设备获取控制器中的当前用户 ID 在我的控制器中我有这样的东西 def index me current user c User find me sheets c time sheets end 我收到一条错误消息 无法找到没有 I
  • 捆绑安装无法从 https://rubygems.org/ 获取规格

    我正在尝试遵循 Hartl Rails 教程 但在使用捆绑器 gem 时遇到了问题 使用命令 bundle install 或 bundle update 时 我得到以下输出 从中获取源索引https rubygems org https
  • 创建一个简单的 Rails 3 文本助手 Gem [重复]

    这个问题在这里已经有答案了 我一直在开发我的第一个 Rails 3 插件 以打包一个我喜欢在ApplicationHelper我所有的应用程序 你可以看到整个代码在 Github 上 https github com burlesona s
  • 目前最流行的 Ruby on Rails AUTHORIZATION gem/plugin 是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Rails 4:资产未在生产中加载

    我正在尝试将我的应用程序投入生产 但图像和 CSS 资源路径不起作用 这是我目前正在做的事情 图像资源位于 app assets images image jpg 样式表位于 app assets stylesheets style css
  • 如何从引擎覆盖 Rails 应用程序路由?

    我有一个 Rails 应用程序 我正在尝试将 Rails 引擎集成到其中 主机应用程序有一些捕获所有路由 magic urls match gt admin rendering show match path edit gt admin r
  • 仅删除多对多关系

    我有一个 has and belongs to many friends join table gt friends peoples 要添加朋友 我会这样做 people followers lt lt friend这会创建关系和新的个人资
  • 多重要求和允许强参数rails 4

    在下面的情况下 我尝试使用强参数 我想要求email address password并允许remember me fields 但像下面这样使用它只允许最后一行在方法示例中 在下面的情况下 它只需要params permit rememb
  • 在 Rails 3 中渲染 Markdown 文本

    我想将 markdown 转换为 html 在我看来我有markdown some text variable 但我得到了错误undefined method markdown I added require BlueCoth 到envir

随机推荐

  • doc.save() 与 jspdf 抛出错误

    当我尝试使用 jsPDF 的 save 函数时 它抛出以下错误 ReferenceError saveAs 未定义 我只是尝试一个非常简单的例子 var doc new jsPDF doc text 20 20 Hello world do
  • 什么是类型和效果系统?

    The 维基百科文章关于效果系统 http en wikipedia org wiki Effect system目前只是一个简短的存根 我有一段时间想知道什么是效果系统 除了类型系统之外 是否还有其他语言还具有效果系统 可能的 假设的 符
  • 在运行时枚举 .NET 程序集资源

    我有一个资源程序集 其中包含使用构建的图像文件Resource or Content建立行动 这使得可以使用 Uris 访问这些文件 但是我找不到枚举此类资源的方法 如果我将构建操作设置为嵌入式资源可以使用以下代码枚举文件 string r
  • 使用 GADT 在 Haskell 中重新创建 Lisp 的“apply”

    作为练习 我正在尝试重新创建 Lispapply在哈斯克尔 我不打算将其用于任何实际目的 我只是认为这是一个更好地熟悉 Haskell 类型系统和一般类型系统的好机会 所以我也不是在寻找其他人的实现 我的想法如下 我可以使用 GADT 来
  • 如何访问NTAG213 NFC交互计数器?

    我正在开发一个 Android 应用程序 我需要查找 NFC 标签被读取的次数 我已经浏览了 NFC 论坛上的文档 对于 NTAG213 有一个名为 MIRROR CONF 的字段 使用该字段可以确定交互计数器是否启用 禁用以及计数器的值
  • 如何用java播放.wav文件

    我正在尝试用 Java 播放 wav 文件 我希望它执行以下操作 按下按钮时 会发出短促的蜂鸣声 我用谷歌搜索了一下 但大部分代码都不起作用 有人能给我一个简单的代码片段来播放 wav 文件吗 最后我设法做到了以下几点并且效果很好 impo
  • p 与 ol 或 ul 的表单样式

    通常我使用无序列表标签来设计表单 例如 fieldset ul li li ul fieldset
  • 在 Android 上使用 Jackson 库解析大型 JSON 时出现内存不足错误

    我正在使用 Jackson 库来解析来自服务器的大型 JSON 响应 json 的大小约为 7 8 MB 我在这段代码上遇到了 outOfMemoryError ObjectMapper mapper new ObjectMapper Js
  • Gitlab docker executor - 在 before_script 之后缓存图像

    In gitlab ci有一个选项 gitlab ci yml http doc gitlab com ce ci yaml README html文件在任何实际脚本运行之前执行命令 称为before script gitlab ci ym
  • JavaFX 应用程序抛出 NullPointerExceptions 但仍然运行

    我运行的每个 JavaFX 应用程序都会抛出两个 NullPointerException 它们不会阻止甚至影响项目的执行 并且只有在调试模式下运行应用程序时我才能看到它们 我什至遇到了来自 Oracle 的 HelloWorld 示例和这
  • RavenDB 在模型命名空间更改后抛出转换异常

    在数据库中 我已经存储了数百个文档 现在系统架构已经改变 并且 除其他外 模型被迁移到不同的命名空间 在不同的程序集中 下面显示了示例文档的元数据 以及我用来获取此类文档的代码 var configuration documentSessi
  • 如何在 FastAPI 中自定义特定路由的错误响应?

    我想做一个HTTPFastAPI 中需要特定的端点Header 产生一个定制的response代码时Header不存在 并且显示Header as required在 FastAPI 生成的 OpenAPI 文档中 例如 如果我将此端点设置
  • 使用来自多个 PHP 页面上的 AJAX 函数的填充变量更新 SQL 查询

    我试图就这个问题寻求帮助 总而言之 问 它不会像这样逐步更新我的数据库条目 按照我认为可以完成的方式进行 它有点难以解释 但我尝试用最少且可读的代码逐步解释它 我使用原始代码 很难将其转换为可重现的示例 A 1 页面 ma aktuelle
  • 如何在 IIS7 上安装 asp.net mvc 2?

    我已经开发了一个 ASP NET MVC 2 网站 现在需要将其部署到我的 Web 服务器 我已经克服了一些障碍 因为没有安装 ASP NET 等 但我现在已经可以提供纯内容文件了 如果我尝试访问我的 MVC URL 之一 我会得到以下信息
  • 动态更改 APEX_ITEM。 Oracle apex 中的 TEXT 值

    我有一个应用程序 我在其中创建了经典报告 它有 4 列 SELECT KEY APEX ITEM TEXT 6 attribute3 10 attribute3 APEX ITEM HIDDEN 3 KEY APEX ITEM TEXT 4
  • 总和可为 null 的 Linq 查询

    from i in Db Items select new VotedItem ItemId i ItemId Points from v in Db Votes where b ItemId v ItemId select v Point
  • America/Mazatlan 时区的无法解析的日期

    I m on America Los AngelesTZ 当我尝试在中渲染午夜时America MazatlanTZ 我得到以下异常 Exception in thread main java text ParseException Unp
  • 在 vue js 中有条件地绑定自定义指令以“在元素事件外部单击”

    参考 根据条件添加 vue 指令 https stackoverflow com questions 37526888 add vue directive on condition 检测点击外部元素 https stackoverflow
  • 如何使用 Guzzle 6 记录所有 API 调用

    我正在尝试使用 guzzle 6 它工作得很好 但是当谈到如何记录所有 api 调用时我迷失了 我想简单地记录时间 从会话登录的用户 url 以及与 API 调用有关的任何其他常见相关信息 我似乎找不到任何涉及此问题的 Guzzle 6 文
  • Rails/Nginx 不服务 JS 和 CSS

    我通过 Capistrano 将 Rails 3 2 8 应用程序部署到我的 Linode 服务器 并启用了资产管道 它正在运行 nginx unicorn 当我访问我的应用程序时 最小化的 JS 和 CSS 没有被提供 尽管资产存在于