Skip to content

[Bug]: Login fails silently when accessing via local IP (HTTP) #409

Description

@FlyingT

Bug Description

When accessing the Fredy Web UI via a local IP address over HTTP, the login process fails silently on an existing setup. The page reloads and clears the input fields without logging the user in. However, accessing the exact same container via a reverse proxy (Nginx Proxy Manager) over HTTPS works perfectly. Tried another browser or incognito tab, doesnt matter.

A completely fresh test container also works over HTTP, indicating the issue only occurs on the existing instance.

Steps to Reproduce

  1. Access the Fredy Web UI via a local IP and port over HTTP.
  2. Enter valid login credentials into the provided fields, click Login
  3. Observe that the page briefly reloads, and the input fields are cleared, but you remain logged out
  4. Access same instance over NPM with domain and HTTPS
  5. Repeat steps, login works

Expected Behavior

The login should succeed, granting access to the Web UI, or an explicit error message should be displayed in the UI indicating why the login failed.

Actual Behavior

The page reloads and the login fields are cleared. The user remains logged out. There are no obvious error messages in the UI, and the browser console/network tab (tested in Firefox) does not show any visible errors.

Screenshots / Logs

Debug Log stays at 0%, so here is a video instead. Doesnt matter if credentials are manually pasted or filled from the password manager.
No error in browser console or network tab too.

20260811-1416-59.3412783.mp4

Environment

App version: 25.2.1, Docker: yes

Additional Context

Docker Compose:

services:
  fredy:
    container_name: fredy
    image: ghcr.io/orangecoding/fredy
    environment:
      - NODE_ENV=production
    volumes:
      - fredy_conf:/conf
      - fredy_db:/db
    ports:
      - "9998:9998"
    restart: unless-stopped
    # Resource limits to prevent runaway memory usage from Chromium
    deploy:
      resources:
        limits:
          memory: 1G
    healthcheck:
      test: ["CMD", "curl", "--fail", "--silent", "--show-error", "--max-time", "5", "http://localhost:9998/"]
      interval: 120s
      timeout: 10s
      retries: 3
      start_period: 30s

volumes:
  fredy_conf:
    name: fredy_conf
  fredy_db:
    name: fredy_db

networks:
  default:
    name: dockerinternal
    external: true

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions