node.js - 一些 JS 和 CSS Assets 没有在 Heroku 上加载,尽管在本地加载

标签 node.js heroku express

在本地,我的 node.js 和 express 应用程序按预期工作。当我推送到 Heroku 时,应用程序能够加载一些样式表和 javascript,但不能加载其他的。这是来自 app.js 的相关片段:

app.configure(function(){
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(__dirname + '/public'));
});

这是我从我的 jade 模板中加载的 Assets :

link(href='/stylesheets/style.css', rel='stylesheet')
link(href='/lib/bootstrap/docs/assets/css/bootstrap.css', rel='stylesheet')
link(href='/lib/bootstrap/docs/assets/css/bootstrap-responsive.css', rel='stylesheet')
script(src='/lib/jquery/jquery-1.7.2.js')
script(src='/lib/bootstrap/docs/assets/js/bootstrap-collapse.js')

一切都在本地工作,但是当我推送到 Heroku 时,style.css 文件和 jquery 文件加载正常。 Bootstrap 文件返回 404。

我很困惑为什么这会在本地工作但会在 Heroku 上中断,并且部分中断。

最佳答案

  1. 检查文件是否真实存在
  2. 检查您的静态文件是否由 Node 或网络服务器提供服务,例如nginx。 Web 服务器可能被错误配置为提供静态文件并且没有在/lib/bootstrap/中查找

关于node.js - 一些 JS 和 CSS Assets 没有在 Heroku 上加载,尽管在本地加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11963524/

相关文章:

node.js - 尝试安装项目依赖项时运行 npm i(退出代码 1)时发生错误

ruby-on-rails-3 - Heroku 上的 Ruby on Rails 问题

ruby-on-rails - 将应用程序部署到 Heroku : 'NameError: uninitialized constant Devise'

java - 在 Heroku(或类似的云服务)中存储 Blob

javascript - 类型错误 : something is not a function

node.js - Node js - 快速发送 pdf 作为响应下载

javascript - 在 jQuery 中,如何通过 http 获取 gzip 文件?

node.js - MongoDB按字段值查询子文档

node.js - 使用 Google Cloud Platform 部署时出错

node.js - 与 Passport 、mongodb 和 express 的持久 session