Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Wrong redirect when using self-hosted Kratos

Abierto
#565 4 comentarios 3 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
nextjs, typescript

Línea de trabajo

Comienza en packages/nextjs/src/utils/rewrite.ts, en la lógica de matching enlazada, y después reproduce un flujo usando la configuración de Kratos self-hosted y dominios de autenticación y aplicación diferentes. Determina el comportamiento de redirección esperado para las URL de UI configuradas, añade o actualiza cobertura específica si el repositorio la proporciona, y verifica que ese flujo ya no vuelva incorrectamente a la URL del backend.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Needs Triage

Hello!

I'm not sure if I am doing something wrong, but it seems there is an assumption here that may not be correct in cases of self-hosted Kratos:
https://github.com/ory/elements/blob/fdabadf8cb2e0ec4fd9286a5277516f8fd69aa0c/packages/nextjs/src/utils/rewrite.ts#L32C1-L32C62

In my Kratos config, I have:

kratos:
  kratos:
    config:
      serve:
        public:
          base_url: https://auth.example.com
          cors:
            allowed_origins:
              - http://localhost:3042
              - https://auth.example.com

      selfservice:
        default_browser_return_url: https://example.com
        allowed_return_urls:
          - http://localhost:3042/*
          - https://example.com/*

        methods:
          webauthn:
            config:
              rp:
                id: example.com
                origin: https://example.com:443/auth/login

        flows:
          error:
            ui_url: https://example.com/error
          
          settings:
            ui_url: https://example.com/settings

          recovery:
            ui_url: https://example.com/auth/recovery
          
          verification:
            ui_url: https://example.com/auth/verification
            after:
              default_browser_return_url: https://example.com
          
          logout:
            after:
              default_browser_return_url: https://example.com
          
          login:
            ui_url: https://example.com/auth/login

          registration:
            ui_url: https://example.com/auth/registration

Every time I start a flow, I get redirected to the UI URLs specified in the config, as-is.
In the linked code above, we can see it tries to match the base URL (let's say https://auth.example.com with the redirect https://example.com/auth/login). Of course, this do not match, it gives up and returns the URL as-is from the backend. It seems a bit weird to me that Ory HAS to be hosted on the same domain as the actual app handling the flows. I suppose this is something specific to the hosted version of Kratos/Ory services, and I also suppose the headers passed are supposed to mitigate this issue, but they do not have any effects in the self-hosted version, it seems.

I'm absolutely open to making a PR if required; I just want to make sure there was no oversight on my side first!

Thanks a lot.

Lenguaje dominante
TypeScript
Estrellas
187
Forks
80
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de ory/elements

Todos los issues de ory/elements

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.