Files
sendou.ink/patches/@react-router__serve@8.1.0.patch
2026-10-04 17:47:08 +03:00

26 lines
1.3 KiB
Diff

diff --git a/dist/cli.js b/dist/cli.js
index 7871cebe46f6df886b76364db5346adfa1838622..3189db69a236f65f99338c672b0b8c766a31e523 100644
--- a/dist/cli.js
+++ b/dist/cli.js
@@ -110,15 +110,16 @@ async function run() {
};
let app = express();
app.disable("x-powered-by");
- if (!isRSCBuild) app.use(compression());
+ app.set("trust proxy", true);
let expressPublicPath = getExpressPath(build.publicPath);
app.use(path.posix.join(expressPublicPath, "assets"), express.static(path.join(build.assetsBuildDirectory, "assets"), {
immutable: true,
maxAge: "1y"
}));
- app.use(expressPublicPath, express.static(build.assetsBuildDirectory));
- app.use(express.static("public", { maxAge: "1h" }));
- app.use(morgan("tiny"));
+ // patched: page and .data requests skip the static file lookups, two fs.stat calls each
+ let onlyForFiles = (middleware) => (req, res, next) => /\.[^/.]+$/.test(req.path) && !req.path.endsWith(".data") ? middleware(req, res, next) : next();
+ app.use(expressPublicPath, onlyForFiles(express.static(build.assetsBuildDirectory)));
+ app.use(onlyForFiles(express.static("public", { maxAge: "1h" })));
if (build.fetch) app.all("/{*splat}", createRequestListener(build.fetch));
else app.all("/{*splat}", createRequestHandler({
build: buildModule,