diff --git a/.changeset/sweet-spoons-study.md b/.changeset/sweet-spoons-study.md new file mode 100644 index 000000000000..31e793244012 --- /dev/null +++ b/.changeset/sweet-spoons-study.md @@ -0,0 +1,5 @@ +--- +'@sveltejs/adapter-node': patch +--- + +fix: disable gzip and brotli when precompress=false diff --git a/packages/adapter-node/index.d.ts b/packages/adapter-node/index.d.ts index d32510e25186..c042257e9769 100644 --- a/packages/adapter-node/index.d.ts +++ b/packages/adapter-node/index.d.ts @@ -3,6 +3,7 @@ import './ambient.js'; declare global { const ENV_PREFIX: string; + const PRECOMPRESS: boolean; } interface AdapterOptions { diff --git a/packages/adapter-node/index.js b/packages/adapter-node/index.js index deed72068bc3..f6efaf07b991 100644 --- a/packages/adapter-node/index.js +++ b/packages/adapter-node/index.js @@ -104,7 +104,8 @@ export default function (opts = {}) { MANIFEST: './server/manifest.js', SERVER: './server/index.js', SHIMS: './shims.js', - ENV_PREFIX: JSON.stringify(envPrefix) + ENV_PREFIX: JSON.stringify(envPrefix), + PRECOMPRESS: JSON.stringify(precompress) } }); diff --git a/packages/adapter-node/src/handler.js b/packages/adapter-node/src/handler.js index 5e80ec2daf3d..d2bf15354aaa 100644 --- a/packages/adapter-node/src/handler.js +++ b/packages/adapter-node/src/handler.js @@ -12,6 +12,7 @@ import { env } from 'ENV'; import { parse_as_bytes } from '../utils.js'; /* global ENV_PREFIX */ +/* global PRECOMPRESS */ const server = new Server(manifest); @@ -47,8 +48,8 @@ function serve(path, client = false) { return fs.existsSync(path) ? sirv(path, { etag: true, - gzip: true, - brotli: true, + gzip: PRECOMPRESS, + brotli: PRECOMPRESS, setHeaders: client ? (res, pathname) => { // only apply to build directory, not e.g. version.json