Skip to content

fix(deploy): write .next/static to standalone root, not under web/#61

Closed
abhicris wants to merge 2 commits into
mainfrom
fix/deploy-static-path
Closed

fix(deploy): write .next/static to standalone root, not under web/#61
abhicris wants to merge 2 commits into
mainfrom
fix/deploy-static-path

Conversation

@abhicris
Copy link
Copy Markdown
Contributor

Bug

After #60 the homepage rendered but lost all styling. Cause: `deploy.sh` wrote `.next/static` to `standalone/web/.next/static/` (mirroring the source dir layout). But `server.js` calls `process.chdir(__dirname)` where `__dirname` is the standalone root, then resolves static at `./.next/static`. So every `/_next/static/*` request 404'd.

Fix

Write static to `standalone/.next/static/` (correct path). README updated with a note that the source-mirror path is misleading.

Verified

After running the patched script on prod, `https://muzix.kcolbchain.com/_next/static/css/500a4bfa41d1f8ba.css\` returns 200 and the homepage renders fully styled.

abhicris added 2 commits May 26, 2026 09:38
…n.com

Codifies the existing manual deploy steps so the next push doesn't need
hand-rolling. The non-obvious step is that Next.js standalone output
deliberately omits web/public/ and web/.next/static — they have to be
copied into the standalone tree after every build, otherwise the labs
(/mixdown.html, /labelton.html) 404 in prod.

Pipeline:
  git pull origin/main → npm install → npm run build →
  cp web/public → standalone/public → cp .next/static → standalone/web/.next/static →
  systemctl restart muzix-web → verify is-active

deploy/README.md documents the on-VPS layout for future operators.
…alone/web/.next/static

server.js does `process.chdir(__dirname)` where __dirname is the
standalone root, then resolves static assets from `./.next/static`.
The previous script mirrored the source layout (web/.next/static),
which silently broke every /_next/static/* request — homepage HTML
rendered but with no CSS and no client JS.

Verified on prod: with the corrected path, /_next/static/css/*.css
returns 200 and the homepage renders fully styled.
@abhicris abhicris closed this May 26, 2026
@abhicris abhicris deleted the fix/deploy-static-path branch May 26, 2026 04:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant