Precompress

用于提供预压缩文件(Brotli 或 Gzip 格式)的中间件。

配置参数

encodings record
Default:
{ br: ".br", gzip: ".gz" }

Description

此中间件搜索并提供文件的预压缩版本(Brotli 或 Gzip 格式)。例如,使用 index.html.brindex.html.gz 而不是 index.html。 请参阅 BrotliGzip 插件,了解如何创建预压缩文件。

Installation

此中间件必须与 Lume 的 HTTP 服务器 一起使用。 要在生产环境中使用它,你需要一个运行 Deno 服务器的主机,例如 Deno Deploy

创建一个入口点文件(例如,serve.ts),包含以下代码:

import Server from "lume/core/server.ts";
import precompress from "lume/middlewares/precompress.ts";

const server = new Server();

server.use(precompress());

server.start();

Local development

你可以配置 Lume 的开发服务器,以便在 _config.ts 文件中使用此中间件:

import lume from "lume/mod.ts";
import precompress from "lume/middlewares/precompress.ts";

const site = lume({
  server: {
    middlewares: [precompress()],
  },
});

export default site;