-
-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
next.js 14.2.1 gives 404 on /auth/signin #10585
Comments
I encountered a 404 error when clicking the "Sign In" button after deploying the NextAuth.js example to Vercel. Here's a breakdown of the issue:Steps to Reproduce:
Expected Behavior:The user should be redirected to the appropriate authentication flow. Actual Behavior:A 404 error page is displayed. Workaround:Downgrading Next.js to version 14.1.4 seems to resolve the issue. |
When I tried following, it works with |
I have a similar problem. When I log in, no redirect is performed. The url remains on /sign-in. If I then do a reload, I am redirected correctly. If I then log out, it does not redirect to the /sign-in page, but remains on the last page. With a downgrade to 14.1.4 this problem does not exist. P.S. I use next-auth@5.0.0-beta.16 |
@patelvivekdev tried your suggestion and it does give me 404 |
@adriangalilea Did you find it out any workaround? P.S. I am using next-auth@5.0.0-beta.16 |
Just staying on next 14.1.4 until this is solved. |
I'm facing a similar issue. Works by downgrading to next 14.1.4. I'm using next-auth@^4.24.7 . |
You folks are amazing ❤️ Was having the same issues of 404s on next |
Same problem in Kubernetes Next.js 14.1.4
- Local: http://localhost:3000
- Network: http://0.0.0.0:3000
[next-auth][error][SIGNIN_OAUTH_ERROR]
https://next-auth.js.org/errors#signin_oauth_error only valid absolute URLs can be requested {
error: {
message: 'only valid absolute URLs can be requested',
stack: 'TypeError: only valid absolute URLs can be requested\n' +
' at e.exports (/app/.next/server/chunks/638.js:39:36528)\n' +
' at _.discover (/app/.next/server/chunks/638.js:39:42111)\n' +
' at o (/app/.next/server/chunks/638.js:6:129314)\n' +
' at s (/app/.next/server/chunks/638.js:6:121669)\n' +
' at Object.s (/app/.next/server/chunks/638.js:30:8642)\n' +
' at _ (/app/.next/server/chunks/638.js:6:107014)\n' +
' at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n' +
' at async a (/app/.next/server/chunks/638.js:30:18310)\n' +
' at async e.length.t (/app/.next/server/chunks/638.js:30:19720)\n' +
' at async /app/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js:6:42484',
name: 'TypeError'
},
providerId: 'keycloak',
message: 'only valid absolute URLs can be requested'
} |
Yeah there seems to be an issue with |
Hmm although, I just upgraded a project of mine that was having the issue as well to Can anyoen else confirm that it may be fixed with |
Works on localhost but not on prod for me, not sure why.
![]() ![]() And I can't see any error on logs. error is live on e-id.to, I may revert to 14.1.4 tomorrow, but in the meantime you can see the error is there still. |
@ndom91 That worked. But I had to reset the Nginx buffers as well. |
I am having the same issue with the URL not changing after a redirect. 14.2.* seems to do this (including 14.2.3 the current latest), but downgrading to 14.1.4 fixes the issue. If you checkout this branch and then downgrade the Next dep it fixes the e2e test. |
I am having the same issue |
For those of you still seeing this issue with |
I have attempted to deploy the latest canary version as follows:
Version 1Same example from next-auth-example Link: https://next-auth-example-xi-pied.vercel.app/ In this version, I am encountering a 404 error when I click the sign-in button. Code Repo : https://github.com/patelvivekdev/next-auth-example Version 2I have also deployed another project with a custom sign-in page. Link: https://next-auth-example-custom-signin.vercel.app/ In this example, I am not encountering any 404 errors. Code Repo : https://github.com/patelvivekdev/next-auth-example/tree/next-canary
|
Deployed two versions, both with same result as 14.2.1.
and
|
Good Morning, Do we have any update on this issue? I am currently using Next v14.2.4 and still getting this error. I am using the resend provider for magic links, whilst they work in development, production environments produce a 404 Error when redirecting to Due to other packages, I cannot downgrade to v14.1.4 so I'd appreciate an update ASAP. Thanks, |
I’m also having the 404 on the |
I'm experiencing quite the same issue as @wladpaiva today, on Next.js 12.2.4, on the sign-in page for GitHub. I'm getting a 404 page but no 404 response; instead, I'm getting a 303 error. However, when I refresh the page, everything is okay and I can log in. |
Quick update to the folks recently posting here as well - there seems to be a bug in Next.js Unfortunately we don't have any more info than this and haven't had time to dig in further yet. If anyone else has the time and interest to dig into this a bit more we'd really appreciate it! |
I've managed to work around the issue by using a custom sign-in page as described in the Auth.js guide while staying on "next": "14.2.4". I understand this doesn't solve the underlying problem, but it might help others experiencing the same issue. |
I'm also experiencing a 404 on the Extra context:
Very frustrating. Unfortunately I have to put the login feature I'm working on aside and work on something else until this is fixed. |
I found a workaround until the 🐛 is fixed. I had the same 404 error describes in the thread where the redirect works locally, but deployed (on vercel) there is nothing really in the logs and on page refresh the redirect is successful. I'm using email magic link w/ resend, so what I want to have happen is after the user submits their email, i want a redirect to '/auth/verify-request' which is a custom page that matches the styling of the rest of my application. What I did was catch the '/api/auth/verify-request' route in the middleware.ts and redirect to '/auth/verify-request'. This isn't a super optimal fix, but I'm shipping this today so wish me luck, haha Hope this works till the bug fix comes out. I'm trying really hard to avoid downgrading packages because I have some difficult to track dependencies elsewhere in the project.
I have a custom signIn in page, and a custom verifyRequest page. My auth.ts looks like this
and then the authConfig is in another file split because of this edge compatibility issue
|
Same here. Spent an entire day trying to fix the issue before I came across this issue |
I'm kinda hoping eventually I can upgrade nextjs, and next-auth to fix this issue as well as a middleware issue I'm having with cloudflare sockets due to the edge runtime stuff. My project isn't super big in terms of authenticated resources so for now I'm securing everything either via layout or on per page/api route basis. Eventually, I'd like to move to a middleware interception approach for auth but for now it does work... |
Same issue here on next |
Hi everyone, I tried a few combinations of versions but haven't been able to reproduce it yet:
Could someone comment here a minimal reproduction that I can reproduce both locally and on Vercel? |
I'll test it today and let you know. |
I tried updating my project to Next 14.2.5 and I'm still experiencing 404s on those Next-Auth routes. |
It is working with "next": "15.0.0-canary.87",
"next-auth":"5.0.0-beta.20", Live link: https://next-auth-example-xi-pied.vercel.app Code: https://github.com/patelvivekdev/next-auth-example/tree/main |
Same issue with next |
@ejdweck solution works great for me. 😊 |
@patelvivekdev very strange, when I clone and run your repo, it works just fine. Even though you're using the GitHub provider and I'm using the Sendgrid provider with the Prisma database adapter — when I make the changes to your This means the issue lies somewhere else in my codebase. I'm thinking it's probably something with one of the dependencies I'm using which could conflict with |
Unfortunately, his solution doesn't fit my use case, because my issue isn't about how to secure routes / pages -- my issue is that I'm getting a 404 response when navigating to /api/auth/signin (for example when clicking the login button). So securing pages & routes individually doesn't solve that problem. If someone figures out a workaround or if progress in made either on the next-auth or next.js side, it would be great ! |
Hey @rodygosset I'm using |
I don't know if you meant a custom signin page, but you could use the same logic to implement a custom signin page, which is my case, just redirect from import { NextResponse } from "next/server";
import { auth as middleware } from "./auth";
export default middleware((request) => {
if (request.nextUrl.pathname === "/api/auth/signin") {
return NextResponse.redirect(new URL("/auth", request.url));
}
}); If that's not the case, then I have no further information, sorry. |
Environment
System:
OS: macOS 14.4.1
CPU: (10) arm64 Apple M2 Pro
Memory: 258.67 MB / 32.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 21.7.1 - ~/.nvm/versions/node/v21.7.1/bin/node
npm: 10.5.0 - ~/.nvm/versions/node/v21.7.1/bin/npm
pnpm: 8.14.1 - ~/Library/pnpm/pnpm
bun: 1.1.1 - /opt/homebrew/bin/bun
Browsers:
Brave Browser: 121.1.62.162
Chrome: 123.0.6312.123
Safari: 17.4.1
npmPackages:
@auth/drizzle-adapter: ^0.8.0 => 0.8.0
next: 14.1.2 => 14.2.1
next-auth: ^5.0.0-beta.15 => 5.0.0-beta.15
react: ^18 => 18.2.0
Reproduction URL
https://github.com/adriangalilea/e-id
Describe the issue
when I use the
signIn
button it leads me tohttps://e-id.to/auth/signin?callbackUrl=https%3A%2F%2Fe-id.to%2F
as per my atuh.tsIf the version of next.js is 14.1.2 it works great.
If the version of next.js is 14.2.1 it gives a 404, if I refresh after the 404, it works normally.
In the meantime I reverted to 14.1.2.
How to reproduce
above
Expected behavior
above
The text was updated successfully, but these errors were encountered: