diff --git a/filebrowser/CHANGELOG.md b/filebrowser/CHANGELOG.md index 75587d8cb3..42e6878b83 100644 --- a/filebrowser/CHANGELOG.md +++ b/filebrowser/CHANGELOG.md @@ -1,5 +1,11 @@ -## 2.63.4-2 (20-05-2026) -- Minor bugs fixed +## 2.63.4-3 (2026-05-20) +- Fix: add nginx redirect from root `/` to `/files/` to prevent Vue Router crash on startup + - Vue Router 4's `/:catchAll(.*)*` redirect throws `TypeError: e.params.catchAll is not iterable` when `catchAll` is `undefined` (navigating to root `/`) + - The redirect ensures the app always loads at `/files/` so the broken catch-all redirect code is never invoked + +## 2.63.4-1 (2026-05-20) +- Fix: always pass --noauth flag when NoAuth=true to ensure correct database initialization (prevents continuous loading screen / blue pulsating dots) +- Fix: avoid passing empty string arguments to filebrowser command ## 2.63.4 (2026-05-19) - Update to latest version from filebrowser/filebrowser (changelog : https://github.com/filebrowser/filebrowser/releases) diff --git a/filebrowser/config.yaml b/filebrowser/config.yaml index 7d0b9862a8..4d7aac0772 100644 --- a/filebrowser/config.yaml +++ b/filebrowser/config.yaml @@ -77,7 +77,7 @@ environment: homeassistant: 2025.5.0 image: ghcr.io/alexbelgium/filebrowser-{arch} ingress: true -ingress_entry: entry +ingress_entry: files ingress_port: 8071 ingress_stream: true map: @@ -124,4 +124,4 @@ schema: slug: filebrowser udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.63.4-2" +version: "2.63.4-3" diff --git a/filebrowser/rootfs/etc/cont-init.d/99-run.sh b/filebrowser/rootfs/etc/cont-init.d/99-run.sh index 06ab5116c3..52201417cb 100755 --- a/filebrowser/rootfs/etc/cont-init.d/99-run.sh +++ b/filebrowser/rootfs/etc/cont-init.d/99-run.sh @@ -77,9 +77,9 @@ if bashio::config.true 'NoAuth'; then rm /data/auth &> /dev/null || true rm /config/filebrowser.dB &> /dev/null || true touch /data/noauth - NOAUTH="--noauth" bashio::log.warning "Auth method change, database reset" fi + NOAUTH="--noauth" bashio::log.info "NoAuth option selected" else if ! bashio::fs.file_exists "/data/auth"; then @@ -113,7 +113,7 @@ fi bashio::log.info "Starting..." # shellcheck disable=SC2086 -/./bin/filebrowser --disablePreviewResize --disableTypeDetectionByHeader --cacheDir="/cache" $CERTFILE $KEYFILE --root="$BASE_FOLDER" --address=0.0.0.0 --port=8080 --database=/config/filebrowser.dB "$NOAUTH" "$DISABLE_THUMBNAILS" & +/./bin/filebrowser --disablePreviewResize --disableTypeDetectionByHeader --cacheDir="/cache" $CERTFILE $KEYFILE --root="$BASE_FOLDER" --address=0.0.0.0 --port=8080 --database=/config/filebrowser.dB ${NOAUTH:+$NOAUTH} ${DISABLE_THUMBNAILS:+$DISABLE_THUMBNAILS} & bashio::net.wait_for 8080 localhost 900 || true bashio::log.info "Started !" nginx || bashio::log.fatal "Nginx failed" diff --git a/filebrowser/rootfs/etc/nginx/servers/ingress.conf b/filebrowser/rootfs/etc/nginx/servers/ingress.conf index f62b732e2d..1e0f0396ee 100644 --- a/filebrowser/rootfs/etc/nginx/servers/ingress.conf +++ b/filebrowser/rootfs/etc/nginx/servers/ingress.conf @@ -6,6 +6,12 @@ server { client_max_body_size 0; + # Redirect bare root to /files/ so the Vue Router never sees path "/" + # (Vue Router 4's /:catchAll(.*)* redirect crashes when catchAll is undefined) + location = / { + return 302 files/; + } + location / { add_header Access-Control-Allow-Origin *; proxy_connect_timeout 30m;