🐛 Bug Report: When the Public URL has a trailing slash, discovery URLs are incorrect #336

Closed
opened 2025-10-09 16:40:51 +03:00 by OVERLORD · 0 comments
Owner

Originally created by @nikdoof on GitHub.

Reproduction steps

When the Public URL, defined by env vars, has a trailing slash, the OIDC discovery endpoint generates incorrect URLs:

PUBLIC_APP_URL=https://id.doofnet.uk/

Expected behavior

Valid URLs should be generated.

Actual Behavior

Resulting OIDC discovery:

https://id.doofnet.uk/.well-known/openid-configuration

{
   "authorization_endpoint":"https://id.doofnet.uk//authorize",
   "claims_supported":[
      "sub",
      "given_name",
      "family_name",
      "name",
      "email",
      "email_verified",
      "preferred_username",
      "picture"
   ],
   "end_session_endpoint":"https://id.doofnet.uk//api/oidc/end-session",
   "id_token_signing_alg_values_supported":[
      "RS256"
   ],
   "issuer":"https://id.doofnet.uk/",
   "jwks_uri":"https://id.doofnet.uk//.well-known/jwks.json",
   "response_types_supported":[
      "code",
      "id_token"
   ],
   "scopes_supported":[
      "openid",
      "profile",
      "email"
   ],
   "subject_types_supported":[
      "public"
   ],
   "token_endpoint":"https://id.doofnet.uk//api/oidc/token",
   "userinfo_endpoint":"https://id.doofnet.uk//api/oidc/userinfo"
}

Pocket ID doesn't correct obvious URL errors as such, so returns a 404 for each URL provided.

Version and Environment

v0.35.0, Container ran in Kubernetes, fronted by Traefik, using Caddy in-image.

Log Output

No response

Originally created by @nikdoof on GitHub. ### Reproduction steps When the Public URL, defined by env vars, has a trailing slash, the OIDC discovery endpoint generates incorrect URLs: ```shell-session PUBLIC_APP_URL=https://id.doofnet.uk/ ``` ### Expected behavior Valid URLs should be generated. ### Actual Behavior Resulting OIDC discovery: **https://id.doofnet.uk/.well-known/openid-configuration** ```json { "authorization_endpoint":"https://id.doofnet.uk//authorize", "claims_supported":[ "sub", "given_name", "family_name", "name", "email", "email_verified", "preferred_username", "picture" ], "end_session_endpoint":"https://id.doofnet.uk//api/oidc/end-session", "id_token_signing_alg_values_supported":[ "RS256" ], "issuer":"https://id.doofnet.uk/", "jwks_uri":"https://id.doofnet.uk//.well-known/jwks.json", "response_types_supported":[ "code", "id_token" ], "scopes_supported":[ "openid", "profile", "email" ], "subject_types_supported":[ "public" ], "token_endpoint":"https://id.doofnet.uk//api/oidc/token", "userinfo_endpoint":"https://id.doofnet.uk//api/oidc/userinfo" } ``` Pocket ID doesn't correct obvious URL errors as such, so returns a 404 for each URL provided. ### Version and Environment v0.35.0, Container ran in Kubernetes, fronted by Traefik, using Caddy in-image. ### Log Output _No response_
OVERLORD added the bug label 2025-10-09 16:40:51 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/pocket-id-pocket-id-2#336