From 5e73bfdd28b6cc6b63da10eda8047bb24c99c971 Mon Sep 17 00:00:00 2001 From: 2620227 Date: Fri, 3 Jul 2026 17:25:54 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20/favicon.ico=20404=20=EC=A0=9C=EA=B1=B0?= =?UTF-8?q?=20=E2=80=94=20svg=20=ED=8C=8C=EB=B9=84=EC=BD=98=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20301=20=EB=A6=AC=EB=8B=A4=EC=9D=B4=EB=A0=89=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 브라우저가 페이지마다 자동 요청하는 /favicon.ico 라우트가 없어 모든 페이지 콘솔에 404가 떴다. /public/favicon.svg 로 넘긴다. Co-Authored-By: Claude Opus 4.8 --- src/server.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/server.js b/src/server.js index 915abe8..81854cc 100644 --- a/src/server.js +++ b/src/server.js @@ -44,6 +44,9 @@ app.use((req, res, next) => { app.get("/healthz", (_req, res) => res.json({ ok: true })); +// 브라우저가 페이지마다 자동 요청하는 /favicon.ico → svg 파비콘으로 넘긴다(콘솔 404 제거). +app.get("/favicon.ico", (_req, res) => res.redirect(301, "/public/favicon.svg")); + // fetch(AJAX) 요청인지: app.js 가 X-Requested-With 를 붙인다. const isAjax = (req) => req.get("X-Requested-With") === "fetch" || (req.get("Accept") || "").includes("application/json");