问题标签 [brotli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1670 浏览

javascript - Brotli in a React application using server side rendering(SSR)

I'm currently wiring up an application with SSR in react. However, I'm having issues with the server NOT returning responses in a Brotli compressed file format. I do see that my br files are getting generated by webpack in my client webpack config file. But my server does not pick up on returning br files back to my client. FYI....I also have my webpack for the client generate gz files as well. The files I'm trying to return back in br mode is the client_bundle.js file and app.css.

As you will see in my server.js file I send back a response in an HTML string format. I have tried changing my link and script tags to return app.css.br and client_bundle.js.br but no avail.

Do you know what I may be doing wrong and why my server won't return and/or client will not pickup the br files for CSS and JS?

FYI....I'm using nodejs, express-static-zip in my server.js file. In addition, I'm using compression-webpack-plugin and brotli-webpack-plugin to generate the br and gz files for app.css and client_bundle.js. Another side note, I'm building my client files into build/public and my server files into build.

Thanks for any assistance.

webpack.client.js

Server.js

0 投票
0 回答
796 浏览

heroku - Cloudflare 将内容编码从 gzip 更改为 brotli

我们使用 GZIP 压缩从 NodeJS Express 服务器提供我们的 React 应用程序。

我们使用 Heroku 进行部署,使用 Cloudfare 作为反向代理。当我检查 Chrome DevTools 网络选项卡时,我看到请求是通过Brotli 压缩的

有人知道这是否是 Cloudflare 方面的某种渐进增强功能,可将受支持客户端的压缩更新为brfrom ?gzip我看到我们可以通过Cloudflare 仪表板启用 Brotli,但我们还没有启用它。我也明白,如果资源已经被 gzip 压缩,Cloudflare 会尊重这一点。关于为什么压缩br而不是压缩的任何想法gzip

0 投票
2 回答
1465 浏览

encoding - CloudCDN 是否支持 Brotli 编码的服务?

我的公司正在考虑从 AWS 迁移到 GCP。我们希望 CloudCDN 支持的功能之一是 brotli 编码。我们有一个技术栈,它将我们的 javascript 捆绑到 3 个文件中:

如果 CloudCDN 收到客户端请求标头Accept-Encoding: br, gzip ,CloudCDN 是否足够智能以提供 Brotli 文件?此外,它会被缓存吗?如果没有,是否有任何其他方法可以在 CloudCDN 中实现这一点。

AWS Cloudfront 仅使用 2 个 lamdbas 提供此功能。我认为这是一个坏主意。

0 投票
1 回答
251 浏览

compression - Brotli的编码器算法说明

Brotli 压缩格式在RFC 7932中有很好的记录。你可以从头到尾阅读这个 RFC,它会告诉你格式是如何工作的。

然而,虽然您可能仅基于 RFC 实现解码器(解压缩器),但 RFC 并未描述作为Google 参考 C 实现(命令行工具)一部分的编码器算法。brotli换句话说,它没有告诉我们编码器在不同质量级别使用什么策略来为给定的输入流找到有效的压缩表示。

当然,我总是可以阅读编码器源代码,但我想知道是否有关于编码器工作原理的可访问的高级描述?

0 投票
1 回答
935 浏览

node.js - 如何在浏览器上查看 brotli 压缩文件?

我正在尝试静态提供 brotli 压缩文件。我能够使用以下代码压缩文件:

所以现在index-b.html文件被压缩了。但是我怎样才能在浏览器上看到这个?

当我转到该页面时,这就是我所看到的:

在此处输入图像描述

我以为浏览器会理解这是一个 brotli 编码文件。但它没有。当我查看响应标头时,

没有编码集。我该如何解决这个问题?

0 投票
1 回答
1424 浏览

amazon-web-services - 从 cloudfront 和 s3 提供 gzip 和 br 文件

当客户端请求标头包含 Accept-Encoding:gxip、deflate、br 时,S3 + Cloudfromt 不提供 .gz /.br 静态文件。

  1. 构建时的压缩文件和 s3 文件夹包含 index.html、index.html.gz 和 index.html.br
  2. 在 cloudfront 的白名单标头中添加了 Accept 编码。
  3. 在 S3 CORS 配置中添加了 Content-Length
  4. 将 index.html.gz 的内容编码添加为 gzip,将 index.html.br 的内容编码为 br,Content-Type 为 text/html
  5. 在 cloufront 中禁用自动压缩

但我没有从 S3+ cloudfront 获取压缩文件。我可以直接访问 index.html.gz。但 cloudfront+S3 无法自动提供文件。我错过了什么吗?还是不能这样服务?

0 投票
0 回答
182 浏览

brotli - brotli 压缩的最佳最小长度是多少?

google ngx_brotli 默认为 20

一些网站提到的最低应该是 100

有人说不要超过 256 字节

实际上确切的数字是多少?对于 nginx 和正常的 brotli 压缩最小。

谁能帮忙解答?提前致谢。

ps:顺便说一句,我也认为最佳压缩级别应该是 5 而不是 6 ...值得商榷。

网上查了一下,没找到。

0 投票
1 回答
27 浏览

php - 网页加载时间和站长

我已尽力将我的网页加载时间优化在 20 毫秒到 30 毫秒之间。每个页面都在这个时间范围内打开,但是当我在网站管理员上看到结果时,它说我的网页需要大约 250 毫秒到 300 毫秒才能下载一个页面。由于我们使用的是 PHP,并且我还在我的 Nginx 服务器上安装了 brotli(而不是 gzip)。

还有什么问题?是网络拥塞还是我的服务器有问题?

0 投票
2 回答
1288 浏览

python - 如何使用brotli压缩python发出http请求

我有一个启用了 brotli 压缩的 Apache 服务器。当我从我的 cli 发送 curl 请求时,它工作正常。但是,当我从 python 发送请求时,它会返回没有 brotli 压缩的纯文本。这意味着它没有使用 brotli 压缩。

有效的卷曲命令:

这是python代码:

如何从 python 发出请求,以便它向服务器发出请求以使用 brotli 压缩。

0 投票
0 回答
265 浏览

angular - 如何在 Angular 应用程序中提供静态 gzip 压缩文件?

我将 main.js 压缩为 main.js.gzip。现在我如何在浏览器中提供 gzip 文件