Skip to content

Port 80 is being set for existing installs #177585

Description

@abb848

The problem

Updating an existing HAOS install to 2026.8.0b0 changes the HTTP port from 8123 to 80. Port 8123 stops responding and the UI is inaccessible unless you either manually browse to the host using port 80, or you wait the 5 minutes timer. If you manually browse you get the popup for confirming the port change.
This isn't the intended behaviour when we designed/developed this feature. Existing installs should not have their port changed.

I've reproduced this in a test environment using fresh install of latest 2026.7 and updating to the beta channel. I'm not sure what logs etc are useful, so let me know if anything is needed and I can work with you to get that.

What version of Home Assistant Core has the issue?

2026.8.0b0

What was the last working version of Home Assistant Core?

2026.7

What type of installation are you running?

Home Assistant OS

Integration causing the issue

http

Link to integration documentation on our website

No response

Diagnostics information

No response

Example YAML snippet

Anything in the logs that might be useful for us?

Additional information

I got Claude to analyze where the possible issue may be, and these are the findings:

Likely introduced by "Default to port 80 and redirect legacy port 8123 under Supervisor" (#174278).

default_server_port() in homeassistant/components/http/config.py returns 80 whenever the SUPERVISOR environment variable is set. That is set on every HAOS and Supervised install, old and new, so the check does not actually distinguish a fresh install.

That default is then filled in by HTTP_STORAGE_SCHEMA wherever a config is validated without a port. The path that matters on update is async_load_config: with no http: block in configuration.yaml it stands in a full config built from the defaults, which under Supervisor carries port 80.

That invented config differs from the stored one, so it is staged as a pending change and used for this start. That matches the observed behaviour: the port switches to 80, the confirmation prompt appears if you reach the instance on port 80, and it reverts after the 5 minute timer if you do not confirm. The 8123 redirect does not help in the meantime, because it only runs while onboarding is unfinished and an upgrading install is already onboarded, so nothing points you at the new port.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Fields

    Priority

    Urgent

    Projects

    Status
    No status
    Status
    Todo

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions