issue: OIDC login flow stucks after callback #5534

Closed
opened 2025-11-11 16:23:43 -06:00 by GiteaMirror · 6 comments
Owner

Originally created by @aidarsvd on GitHub (Jun 13, 2025).

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of Open WebUI.

Installation Method

Docker

Open WebUI Version

v0.6.14

Ollama Version (if applicable)

No response

Operating System

macOS Sequoia

Browser (if applicable)

Chrome 137.0.7151.104

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

After completing a successful login via a compliant OIDC provider (which correctly returns all required tokens and endpoints, including /openid-configuration, /token, /userinfo, and /certs), the Open WebUI frontend should properly handle the callback and direct the user to the main application interface.

The authenticated user should be created or updated in the database with the correct data, and automatically logged into the system without encountering frontend routing errors like Not found: //auth.

Actual Behavior

After a successful login with the OIDC provider, the user is redirected back to the Open WebUI callback endpoint, which correctly processes the /token, /userinfo, and /certs requests. The backend responds with a 307 redirect as expected.

However, the frontend does not handle the redirect properly. Instead of logging the user in and routing to the main interface, the app throws a routing error in the console and returns to the auth page again:

app.js:92 Ie: Not found: //auth
    at ee (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:22237)
    at async Module.$n (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:13310)

Steps to Reproduce

  1. Deploy Open WebUI using the following Docker command:
docker run -d -p 3000:8080 \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -e OAUTH_CLIENT_ID=****** \
  -e OAUTH_CLIENT_SECRET=****** \
  -e OPENID_PROVIDER_URL=https://******/oauth/openid-configuration.php \
  -e OAUTH_PROVIDER_NAME=****** \
  -e OAUTH_SCOPES=openid email profile \
  -e ENABLE_OAUTH_SIGNUP=true \
  -e ENABLE_LOGIN_FORM=false \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:main
  1. Launch the application and initiate login.
    Image

  2. Complete authentication on the configured OIDC provider.

  3. After the redirection, you end up back on the login page with the path /auth?redirect=%2F%2Fauth

Logs & Screenshots

Logs from the Browser console after redirection:

app.js:92 Ie: Not found: //auth
    at ee (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:22237)
    at async Module.$n (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:13310)
handleError @ app.js:92
V @ client.js:1812
ee @ client.js:1461
await in ee
Ce @ client.js:398
An @ client.js:1926
$n @ client.js:323
await in $n
(anonymous) @ auth:129
Promise.then
(anonymous) @ auth:128Understand this error
+layout.svelte:559 Backend config: {
    "status": true,
    "name": "Open WebUI",
    "version": "0.6.14",
    "default_locale": "",
    "oauth": {
        "providers": {
            "oidc": "WHMCS"
        }
    },
    "features": {
        "auth": true,
        "auth_trusted_header": false,
        "enable_ldap": false,
        "enable_api_key": true,
        "enable_signup": false,
        "enable_login_form": false,
        "enable_websocket": true,
        "enable_direct_connections": true,
        "enable_channels": false,
        "enable_notes": true,
        "enable_web_search": false,
        "enable_code_execution": true,
        "enable_code_interpreter": true,
        "enable_image_generation": false,
        "enable_autocomplete_generation": false,
        "enable_community_sharing": true,
        "enable_message_rating": true,
        "enable_user_webhooks": true,
        "enable_admin_export": true,
        "enable_admin_chat_access": true,
        "enable_google_drive_integration": false,
        "enable_onedrive_integration": false
    },
    "default_models": null,
    "default_prompt_suggestions": [
        {
            "title": [
                "Help me study",
                "vocabulary for a college entrance exam"
            ],
            "content": "Help me study vocabulary: write a sentence for me to fill in the blank, and I'll try to pick the correct option."
        },
        {
            "title": [
                "Give me ideas",
                "for what to do with my kids' art"
            ],
            "content": "What are 5 creative things I could do with my kids' art? I don't want to throw them away, but it's also so much clutter."
        },
        {
            "title": [
                "Tell me a fun fact",
                "about the Roman Empire"
            ],
            "content": "Tell me a random fun fact about the Roman Empire"
        },
        {
            "title": [
                "Show me a code snippet",
                "of a website's sticky header"
            ],
            "content": "Show me a code snippet of a website's sticky header in CSS and JavaScript."
        },
        {
            "title": [
                "Explain options trading",
                "if I'm familiar with buying and selling stocks"
            ],
            "content": "Explain options trading in simple terms if I'm familiar with buying and selling stocks."
        },
        {
            "title": [
                "Overcome procrastination",
                "give me tips"
            ],
            "content": "Could you start by asking me about instances when I procrastinate the most and then give me some suggestions to overcome it?"
        }
    ],
    "user_count": 2,
    "code": {
        "engine": "pyodide"
    },
    "audio": {
        "tts": {
            "engine": "",
            "voice": "alloy",
            "split_on": "punctuation"
        },
        "stt": {
            "engine": ""
        }
    },
    "file": {
        "max_size": null,
        "max_count": null
    },
    "permissions": {
        "workspace": {
            "models": false,
            "knowledge": false,
            "prompts": false,
            "tools": false
        },
        "sharing": {
            "public_models": false,
            "public_knowledge": false,
            "public_prompts": false,
            "public_tools": false
        },
        "chat": {
            "controls": true,
            "file_upload": true,
            "delete": true,
            "edit": true,
            "share": true,
            "export": true,
            "stt": true,
            "tts": true,
            "call": true,
            "multiple_models": true,
            "temporary": true,
            "temporary_enforced": false
        },
        "features": {
            "direct_tool_servers": false,
            "web_search": true,
            "image_generation": true,
            "code_interpreter": true,
            "notes": true
        }
    },
    "google_drive": {
        "client_id": "",
        "api_key": ""
    },
    "onedrive": {
        "client_id": "",
        "sharepoint_url": "",
        "sharepoint_tenant_id": ""
    },
    "ui": {
        "pending_user_overlay_title": "",
        "pending_user_overlay_content": "",
        "response_watermark": ""
    },
    "license_metadata": null
}
connected JTUxL6EMqGyAjosRAAAp

Logs from the container

2025-06-13 15:21:04 Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
2025-06-13 15:21:04 Loading WEBUI_SECRET_KEY from .webui_secret_key
2025-06-13 15:21:06 /app/backend/open_webui
2025-06-13 15:21:06 /app/backend
2025-06-13 15:21:06 /app
2025-06-13 15:21:06 INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
2025-06-13 15:21:06 INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
2025-06-13 15:21:06 INFO  [open_webui.env] 'ENABLE_SIGNUP' loaded from the latest database entry
2025-06-13 15:21:06 WARNI [open_webui.env] 
2025-06-13 15:21:06 
2025-06-13 15:21:06 WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS.
2025-06-13 15:21:06 
2025-06-13 15:21:06 INFO  [open_webui.env] Embedding model set: sentence-transformers/all-MiniLM-L6-v2
2025-06-13 15:21:07 WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests.
2025-06-13 15:21:11 
2025-06-13 15:21:11  ██████╗ ██████╗ ███████╗███╗   ██╗    ██╗    ██╗███████╗██████╗ ██╗   ██╗██╗
2025-06-13 15:21:11 ██╔═══██╗██╔══██╗██╔════╝████╗  ██║    ██║    ██║██╔════╝██╔══██╗██║   ██║██║
2025-06-13 15:21:11 ██║   ██║██████╔╝█████╗  ██╔██╗ ██║    ██║ █╗ ██║█████╗  ██████╔╝██║   ██║██║
2025-06-13 15:21:11 ██║   ██║██╔═══╝ ██╔══╝  ██║╚██╗██║    ██║███╗██║██╔══╝  ██╔══██╗██║   ██║██║
2025-06-13 15:21:11 ╚██████╔╝██║     ███████╗██║ ╚████║    ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║
2025-06-13 15:21:11  ╚═════╝ ╚═╝     ╚══════╝╚═╝  ╚═══╝     ╚══╝╚══╝ ╚══════╝╚═════╝  ╚═════╝ ╚═╝
2025-06-13 15:21:11 
2025-06-13 15:21:11 
2025-06-13 15:21:11 v0.6.14 - building the best AI user interface.
2025-06-13 15:21:11 
2025-06-13 15:21:11 https://github.com/open-webui/open-webui
2025-06-13 15:21:11 
Fetching 30 files: 100%|██████████| 30/30 [00:00<00:00, 220366.23it/s]
2025-06-13 15:21:11 INFO:     Started server process [1]
2025-06-13 15:21:11 INFO:     Waiting for application startup.
2025-06-13 15:21:11 2025-06-13 13:21:11.668 | INFO     | open_webui.utils.logger:start_logger:140 - GLOBAL_LOG_LEVEL: INFO - {}
2025-06-13 15:21:11 2025-06-13 13:21:11.668 | INFO     | open_webui.main:lifespan:505 - Installing external dependencies of functions and tools... - {}
2025-06-13 15:21:11 2025-06-13 13:21:11.674 | INFO     | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {}
2025-06-13 15:21:26 2025-06-13 13:21:26.561 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/openid-configuration.php "HTTP/1.1 200 OK" - {}
2025-06-13 15:21:26 2025-06-13 13:21:26.615 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /oauth/oidc/login HTTP/1.1" 302 - {}
2025-06-13 15:21:27 2025-06-13 13:21:27.707 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: POST https://******/oauth/token.php "HTTP/1.1 200 OK" - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.157 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/certs.php "HTTP/1.1 200 OK" - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.562 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/userinfo.php "HTTP/1.1 200 OK" - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.612 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /oauth/oidc/callback?code=814019892837e29fc3698bbcb0490ac1b9d5c635&state=ERsLzg6o5abdFApdv60YfUzELGkQZO HTTP/1.1" 307 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.710 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /static/splash.png HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.712 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /static/loader.js HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.845 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /manifest.json HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.848 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47293 - "GET /static/splash-dark.png HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.853 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.880 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /api/config HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.882 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47293 - "GET /static/favicon.png HTTP/1.1" 200 - {}
2025-06-13 15:21:28 2025-06-13 13:21:28.950 | INFO     | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /static/favicon-dark.png HTTP/1.1" 200 - {}

Additional Information

OID Configuration response

{
    "issuer": "https:\/\/******",
    "authorization_endpoint": "https:\/\/******\/oauth\/authorize.php",
    "token_endpoint": "https:\/\/******\/oauth\/token.php",
    "userinfo_endpoint": "https:\/\/******\/oauth\/userinfo.php",
    "jwks_uri": "https:\/\/******\/oauth\/certs.php",
    "response_types_supported": [],
    "subject_types_supported": [
        "public"
    ],
    "id_token_signing_alg_values_supported": [
        "RS256"
    ],
    "scopes_supported": [
        "openid",
        "email",
        "profile"
    ],
    "claims_supported": [
        "iss",
        "aud",
        "exp",
        "sub"
    ]
}

Container database

In the database, user was created successfully. In the table auth record appeared with correct data and status=1. Same for table user

Originally created by @aidarsvd on GitHub (Jun 13, 2025). ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of Open WebUI. ### Installation Method Docker ### Open WebUI Version v0.6.14 ### Ollama Version (if applicable) _No response_ ### Operating System macOS Sequoia ### Browser (if applicable) Chrome 137.0.7151.104 ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior After completing a successful login via a compliant OIDC provider (which correctly returns all required tokens and endpoints, including /openid-configuration, /token, /userinfo, and /certs), the Open WebUI frontend should properly handle the callback and direct the user to the main application interface. The authenticated user should be created or updated in the database with the correct data, and automatically logged into the system without encountering frontend routing errors like Not found: //auth. ### Actual Behavior After a successful login with the OIDC provider, the user is redirected back to the Open WebUI callback endpoint, which correctly processes the /token, /userinfo, and /certs requests. The backend responds with a 307 redirect as expected. However, the frontend does not handle the redirect properly. Instead of logging the user in and routing to the main interface, the app throws a routing error in the console **_and returns to the auth page again_**: ``` app.js:92 Ie: Not found: //auth at ee (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:22237) at async Module.$n (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:13310) ``` ### Steps to Reproduce 1. Deploy Open WebUI using the following Docker command: ```bash docker run -d -p 3000:8080 \ -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \ -e OAUTH_CLIENT_ID=****** \ -e OAUTH_CLIENT_SECRET=****** \ -e OPENID_PROVIDER_URL=https://******/oauth/openid-configuration.php \ -e OAUTH_PROVIDER_NAME=****** \ -e OAUTH_SCOPES=openid email profile \ -e ENABLE_OAUTH_SIGNUP=true \ -e ENABLE_LOGIN_FORM=false \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main ``` 2. Launch the application and initiate login. <img width="595" alt="Image" src="https://github.com/user-attachments/assets/8cb4868c-ef47-4bea-8838-0aa70a34f5bc" /> 3. Complete authentication on the configured OIDC provider. 4. After the redirection, you end up back on the login page with the path `/auth?redirect=%2F%2Fauth` ### Logs & Screenshots ### Logs from the Browser console after redirection: ``` app.js:92 Ie: Not found: //auth at ee (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:22237) at async Module.$n (http://localhost:3000/_app/immutable/chunks/DhiFcSiW.js:1:13310) handleError @ app.js:92 V @ client.js:1812 ee @ client.js:1461 await in ee Ce @ client.js:398 An @ client.js:1926 $n @ client.js:323 await in $n (anonymous) @ auth:129 Promise.then (anonymous) @ auth:128Understand this error +layout.svelte:559 Backend config: { "status": true, "name": "Open WebUI", "version": "0.6.14", "default_locale": "", "oauth": { "providers": { "oidc": "WHMCS" } }, "features": { "auth": true, "auth_trusted_header": false, "enable_ldap": false, "enable_api_key": true, "enable_signup": false, "enable_login_form": false, "enable_websocket": true, "enable_direct_connections": true, "enable_channels": false, "enable_notes": true, "enable_web_search": false, "enable_code_execution": true, "enable_code_interpreter": true, "enable_image_generation": false, "enable_autocomplete_generation": false, "enable_community_sharing": true, "enable_message_rating": true, "enable_user_webhooks": true, "enable_admin_export": true, "enable_admin_chat_access": true, "enable_google_drive_integration": false, "enable_onedrive_integration": false }, "default_models": null, "default_prompt_suggestions": [ { "title": [ "Help me study", "vocabulary for a college entrance exam" ], "content": "Help me study vocabulary: write a sentence for me to fill in the blank, and I'll try to pick the correct option." }, { "title": [ "Give me ideas", "for what to do with my kids' art" ], "content": "What are 5 creative things I could do with my kids' art? I don't want to throw them away, but it's also so much clutter." }, { "title": [ "Tell me a fun fact", "about the Roman Empire" ], "content": "Tell me a random fun fact about the Roman Empire" }, { "title": [ "Show me a code snippet", "of a website's sticky header" ], "content": "Show me a code snippet of a website's sticky header in CSS and JavaScript." }, { "title": [ "Explain options trading", "if I'm familiar with buying and selling stocks" ], "content": "Explain options trading in simple terms if I'm familiar with buying and selling stocks." }, { "title": [ "Overcome procrastination", "give me tips" ], "content": "Could you start by asking me about instances when I procrastinate the most and then give me some suggestions to overcome it?" } ], "user_count": 2, "code": { "engine": "pyodide" }, "audio": { "tts": { "engine": "", "voice": "alloy", "split_on": "punctuation" }, "stt": { "engine": "" } }, "file": { "max_size": null, "max_count": null }, "permissions": { "workspace": { "models": false, "knowledge": false, "prompts": false, "tools": false }, "sharing": { "public_models": false, "public_knowledge": false, "public_prompts": false, "public_tools": false }, "chat": { "controls": true, "file_upload": true, "delete": true, "edit": true, "share": true, "export": true, "stt": true, "tts": true, "call": true, "multiple_models": true, "temporary": true, "temporary_enforced": false }, "features": { "direct_tool_servers": false, "web_search": true, "image_generation": true, "code_interpreter": true, "notes": true } }, "google_drive": { "client_id": "", "api_key": "" }, "onedrive": { "client_id": "", "sharepoint_url": "", "sharepoint_tenant_id": "" }, "ui": { "pending_user_overlay_title": "", "pending_user_overlay_content": "", "response_watermark": "" }, "license_metadata": null } connected JTUxL6EMqGyAjosRAAAp ``` ### Logs from the container ``` 2025-06-13 15:21:04 Loading WEBUI_SECRET_KEY from file, not provided as an environment variable. 2025-06-13 15:21:04 Loading WEBUI_SECRET_KEY from .webui_secret_key 2025-06-13 15:21:06 /app/backend/open_webui 2025-06-13 15:21:06 /app/backend 2025-06-13 15:21:06 /app 2025-06-13 15:21:06 INFO [alembic.runtime.migration] Context impl SQLiteImpl. 2025-06-13 15:21:06 INFO [alembic.runtime.migration] Will assume non-transactional DDL. 2025-06-13 15:21:06 INFO [open_webui.env] 'ENABLE_SIGNUP' loaded from the latest database entry 2025-06-13 15:21:06 WARNI [open_webui.env] 2025-06-13 15:21:06 2025-06-13 15:21:06 WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS. 2025-06-13 15:21:06 2025-06-13 15:21:06 INFO [open_webui.env] Embedding model set: sentence-transformers/all-MiniLM-L6-v2 2025-06-13 15:21:07 WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests. 2025-06-13 15:21:11 2025-06-13 15:21:11 ██████╗ ██████╗ ███████╗███╗ ██╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗██╗ 2025-06-13 15:21:11 ██╔═══██╗██╔══██╗██╔════╝████╗ ██║ ██║ ██║██╔════╝██╔══██╗██║ ██║██║ 2025-06-13 15:21:11 ██║ ██║██████╔╝█████╗ ██╔██╗ ██║ ██║ █╗ ██║█████╗ ██████╔╝██║ ██║██║ 2025-06-13 15:21:11 ██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║ ██║███╗██║██╔══╝ ██╔══██╗██║ ██║██║ 2025-06-13 15:21:11 ╚██████╔╝██║ ███████╗██║ ╚████║ ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║ 2025-06-13 15:21:11 ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚══╝╚══╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝ 2025-06-13 15:21:11 2025-06-13 15:21:11 2025-06-13 15:21:11 v0.6.14 - building the best AI user interface. 2025-06-13 15:21:11 2025-06-13 15:21:11 https://github.com/open-webui/open-webui 2025-06-13 15:21:11 Fetching 30 files: 100%|██████████| 30/30 [00:00<00:00, 220366.23it/s] 2025-06-13 15:21:11 INFO: Started server process [1] 2025-06-13 15:21:11 INFO: Waiting for application startup. 2025-06-13 15:21:11 2025-06-13 13:21:11.668 | INFO | open_webui.utils.logger:start_logger:140 - GLOBAL_LOG_LEVEL: INFO - {} 2025-06-13 15:21:11 2025-06-13 13:21:11.668 | INFO | open_webui.main:lifespan:505 - Installing external dependencies of functions and tools... - {} 2025-06-13 15:21:11 2025-06-13 13:21:11.674 | INFO | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {} 2025-06-13 15:21:26 2025-06-13 13:21:26.561 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/openid-configuration.php "HTTP/1.1 200 OK" - {} 2025-06-13 15:21:26 2025-06-13 13:21:26.615 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /oauth/oidc/login HTTP/1.1" 302 - {} 2025-06-13 15:21:27 2025-06-13 13:21:27.707 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: POST https://******/oauth/token.php "HTTP/1.1 200 OK" - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.157 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/certs.php "HTTP/1.1 200 OK" - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.562 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: GET https://******/oauth/userinfo.php "HTTP/1.1 200 OK" - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.612 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /oauth/oidc/callback?code=814019892837e29fc3698bbcb0490ac1b9d5c635&state=ERsLzg6o5abdFApdv60YfUzELGkQZO HTTP/1.1" 307 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.710 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /static/splash.png HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.712 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /static/loader.js HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.845 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47291 - "GET /manifest.json HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.848 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47293 - "GET /static/splash-dark.png HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.853 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.880 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /api/config HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.882 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47293 - "GET /static/favicon.png HTTP/1.1" 200 - {} 2025-06-13 15:21:28 2025-06-13 13:21:28.950 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 192.168.65.1:47292 - "GET /static/favicon-dark.png HTTP/1.1" 200 - {} ``` ### Additional Information ### OID Configuration response ```json { "issuer": "https:\/\/******", "authorization_endpoint": "https:\/\/******\/oauth\/authorize.php", "token_endpoint": "https:\/\/******\/oauth\/token.php", "userinfo_endpoint": "https:\/\/******\/oauth\/userinfo.php", "jwks_uri": "https:\/\/******\/oauth\/certs.php", "response_types_supported": [], "subject_types_supported": [ "public" ], "id_token_signing_alg_values_supported": [ "RS256" ], "scopes_supported": [ "openid", "email", "profile" ], "claims_supported": [ "iss", "aud", "exp", "sub" ] } ``` ### Container database In the database, user was created successfully. In the table `auth` record appeared with correct data and status=1. Same for table `user`
GiteaMirror added the bug label 2025-11-11 16:23:43 -06:00
Author
Owner

@ShineQi commented on GitHub (Jun 13, 2025):

I'm having the same issue with Azure AD login, it seems the login was success, but browser side redirected to //auth, duplicated backslash

app.js:92 
 Ie: Not found: //auth
    at ee (https://xxxx.cloudapp.azure.com/_app/immutable/chunks/Dhpi6yf_.js:1:22203)
    at async Module.$n (https://xxxx.cloudapp.azure.com/_app/immutable/chunks/Dhpi6yf_.js:1:13276)
overrideMethod	@	hook.js:608
handleError	@	app.js:92
V	@	client.js:1812
ee	@	client.js:1461
await in ee		
Ce	@	client.js:398
An	@	client.js:1926
$n	@	client.js:323
await in $n		
(anonymous)	@	auth:129
Promise.then		
(anonymous)	@	auth:128

@ShineQi commented on GitHub (Jun 13, 2025): I'm having the same issue with Azure AD login, it seems the login was success, but browser side redirected to //auth, duplicated backslash ``` app.js:92 Ie: Not found: //auth at ee (https://xxxx.cloudapp.azure.com/_app/immutable/chunks/Dhpi6yf_.js:1:22203) at async Module.$n (https://xxxx.cloudapp.azure.com/_app/immutable/chunks/Dhpi6yf_.js:1:13276) overrideMethod @ hook.js:608 handleError @ app.js:92 V @ client.js:1812 ee @ client.js:1461 await in ee Ce @ client.js:398 An @ client.js:1926 $n @ client.js:323 await in $n (anonymous) @ auth:129 Promise.then (anonymous) @ auth:128 ```
Author
Owner

@Nortrix0 commented on GitHub (Jun 13, 2025):

I also ran into this, oddly enough my coworker has a similar setup but doesn't have this issue. It seems to be fixed in this Merge Request so hopefully it'll be pushed to a release soon.

https://github.com/open-webui/open-webui/pull/14943

@Nortrix0 commented on GitHub (Jun 13, 2025): I also ran into this, oddly enough my coworker has a similar setup but doesn't have this issue. It seems to be fixed in this Merge Request so hopefully it'll be pushed to a release soon. https://github.com/open-webui/open-webui/pull/14943
Author
Owner

@jk-f5 commented on GitHub (Jun 13, 2025):

FYI: you can fix the issue inline with your docker command if you want.. Basically use sed to replace the line that causes auth to fail, then start up open-webui. Example:

docker run -d -p 3000:8080 \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -e OAUTH_CLIENT_ID=****** \
  -e OAUTH_CLIENT_SECRET=****** \
  -e OPENID_PROVIDER_URL=https://******/oauth/openid-configuration.php \
  -e OAUTH_PROVIDER_NAME=****** \
  -e OAUTH_SCOPES=openid email profile \
  -e ENABLE_OAUTH_SIGNUP=true \
  -e ENABLE_LOGIN_FORM=false \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:v0.6.14 \
  bash -c "sed -i -e '/redirect_base_url = / s/request\.app\.state\.config\.WEBUI_URL or request\.base_url/str(&)/' /app/backend/open_webui/utils/oauth.py; bash start.sh;"
@jk-f5 commented on GitHub (Jun 13, 2025): FYI: you can fix the issue inline with your docker command if you want.. Basically use sed to replace the line that causes auth to fail, then start up open-webui. Example: ```bash docker run -d -p 3000:8080 \ -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \ -e OAUTH_CLIENT_ID=****** \ -e OAUTH_CLIENT_SECRET=****** \ -e OPENID_PROVIDER_URL=https://******/oauth/openid-configuration.php \ -e OAUTH_PROVIDER_NAME=****** \ -e OAUTH_SCOPES=openid email profile \ -e ENABLE_OAUTH_SIGNUP=true \ -e ENABLE_LOGIN_FORM=false \ -v open-webui:/app/backend/data \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:v0.6.14 \ bash -c "sed -i -e '/redirect_base_url = / s/request\.app\.state\.config\.WEBUI_URL or request\.base_url/str(&)/' /app/backend/open_webui/utils/oauth.py; bash start.sh;" ```
Author
Owner

@aidarsvd commented on GitHub (Jun 16, 2025):

fixed in v0.6.15

@aidarsvd commented on GitHub (Jun 16, 2025): fixed in [v0.6.15](https://github.com/open-webui/open-webui/releases/tag/v0.6.15)
Author
Owner

@wllianwd commented on GitHub (Jun 25, 2025):

I'm having the same issue after updating (from v0.6.10), even with v0.6.15:

app.js:92 Ie: Not found: /oauth/oidc/open-webui.mycompany.com/auth
    at ee (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:22235)
    at async Module.$n (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:13308)
@wllianwd commented on GitHub (Jun 25, 2025): I'm having the same issue after updating (from v0.6.10), even with v0.6.15: ``` app.js:92 Ie: Not found: /oauth/oidc/open-webui.mycompany.com/auth at ee (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:22235) at async Module.$n (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:13308) ```
Author
Owner

@jk-f5 commented on GitHub (Jun 25, 2025):

I'm having the same issue after updating (from v0.6.10), even with v0.6.15:

app.js:92 Ie: Not found: /oauth/oidc/open-webui.mycompany.com/auth
    at ee (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:22235)
    at async Module.$n (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:13308)

This is not the same issue.

@jk-f5 commented on GitHub (Jun 25, 2025): > I'm having the same issue after updating (from v0.6.10), even with v0.6.15: > > ``` > app.js:92 Ie: Not found: /oauth/oidc/open-webui.mycompany.com/auth > at ee (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:22235) > at async Module.$n (https://open-webui.mycompany.com/_app/immutable/chunks/DIXatSDb.js:1:13308) > ``` This is not the same issue.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#5534