유대선
프로젝트로
·트러블슈팅·1

Live site returned 401 to everyone (Vercel Authentication on by default)

Production URL was unreachable until I disabled Vercel's default deployment protection. No code change.

Symptom

After the first successful deploy, curl https://daseon-blog-xxxxx.vercel.app/ returned 401 text/html. Browser worked only when I was logged into my Vercel account. A friend hitting the URL saw the Vercel SSO login page, not the site.

Cause

Vercel Free tier turns on Vercel Authentication (a deployment-protection mode) by default for all preview and deployment URLs. The intent is "internal staging is private by default". For a public portfolio, it's the opposite of what you want.

This is not Next.js — it's a Vercel project-level setting.

Fix

No code change. In the Vercel dashboard:

Project → Settings → Deployment Protection
→ Vercel Authentication: Off

(Or "Only Preview Deployments" if you want previews protected but production public.)

After saving, the public URL is reachable without login. Subsequent deploys inherit the setting.

Pattern

Vercel's default-on protections (Auth, DDoS, password) target the wrong audience for an open portfolio. Check the Deployment Protection page once per project, right after the first deploy succeeds — before sharing any URLs externally.