node.js - 在 IBM Cloud Foundry 中运行 nodejs 应用程序时文件不压缩

标签 node.js express ibm-cloud cloud-foundry

所以我有简单的 express 应用程序。当它在本地运行时,我可以看到 js、css 文件被 gzip 压缩,但是当我部署到 cloud foundry 时,这些文件没有被压缩。文件大小仍然相同。 任何人都知道原因、如何解决或解决此问题?

const express = require('express');
const compression = require('compression');
const app = express();

app.use(compression());
app.use(express.static('./public'));

包.json

{
  "name": "conversation-simple",
  "description": "A simple Node.js based web app which shows how to use the Conversation API to recognize user intents.",
  "version": "0.1.1",
  "main": "server.js",
  "scripts": {
    "start": "node server.js"
  },
  "dependencies": {
    "@google/chatbase": "^1.1.2",
    "body-parser": "^1.18.2",
    "botbuilder": "^3.15.0",
    "cloudant": "^1.10.0-NOTICE",
    "compression": "^1.7.3",
    "cors": "^2.8.4",
    "dotenv": "^2.0.0",
    "express": "^4.16.1",
    "gulp-rename": "^1.4.0",
    "moment": "^2.22.2",
    "nano": "^6.4.4",
    "request": "^2.87.0",
    "slick-carousel": "^1.8.1",
    "underscore": "^1.9.0",
    "universal-analytics": "^0.4.16",
    "watson-developer-cloud": "^3.5.3",
    "xml-js": "^1.6.3"
  },
  "engines": {
    "node": "8.15.x"
  }
}

更新:

看起来有位置问题。当它部署到悉尼时,压缩不起作用,但达拉斯没问题。 IBM 支持人员已确认我的问题单中存在的问题,目前正在调查中。

最佳答案

我有同样的问题,我觉得到目前为止我已经尝试了一切: 静态 Gzipping(服务 .gz 文件) Brotli(无骰子) 动态压缩(像你一样) 重定向到静态 .gz 文件

它在本地正常工作,但一旦部署 - 放屁 什么都没有。

我觉得它发生在代理中,需要在某个地方启用,但没有记录在案

在这里发表评论来关注这个,我也联系了他们的支持,如果我得到任何答案,我会把它们放在这里:)

关于node.js - 在 IBM Cloud Foundry 中运行 nodejs 应用程序时文件不压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56035334/

相关文章:

node.js - Passport 事件目录 node.js

node.js - firebase 和 firebase-admin npm 模块有什么区别?

javascript - RESTful API 中复杂的 POST 参数的可能格式是什么?

node.js express 模块加载不正确

azure - 将文件从 IBM Cloud 对象存储传输到 Azure blob

javascript - typescript 'An export assignment cannot be used in a module with other exported elements'

javascript - 读取两个文件并连接到同一字符串但失败

node.js - NodeJS w/Express 错误 : Cannot GET/

ibm-cloud - Bluemix 上的高可用性

docker - 在IBM Cloud Kubernetes中公开HAProxy(端口80)Docker的最简单方法