RareBird15

joined 2 months ago
 

Help Needed: Homepage Dashboard "Failed to construct 'URL'" Error

Hi everyone! πŸ‘‹

I'm encountering a persistent issue with my self-hosted Homepage dashboard (v1.1.1). Some tabs with bookmarks fail to load, showing the error:

TypeError: Failed to construct 'URL': Invalid URL

This happens on multiple tabs, including Accessibility_Resources and Shopping. I've tried troubleshooting by:

  • Validating my YAML files (all are valid).

  • Using lowercase tab names without special characters.

  • Ensuring all URLs in bookmarks.yaml are absolute (http:// or https://).

  • Clearing browser cache and testing in multiple browsers.

Despite these efforts, the issue persists. The error appears in the browser console as follows:

TypeError: Failed to construct 'URL': Invalid URL    at F (index-3a04b80eb558747c.js:1:42899)    at af (framework-bbeeca9707659ffa.js:1:65163)    ...

I suspect the issue might be related to how Homepage processes bookmarks or tab names internally. Below are my full configuration files for reference (API keys and sensitive data redacted):

widgets.yaml

- search:    provider: custom    url: https://search.laniecarmelo.tech/search?q=%25s    target: _blank    suggestionUrl: https://search.laniecarmelo.tech/autocompleter?q=%25s    showSearchSuggestions: true- datetime:    format:        dateStyle: full        timeStyle: long        hour12: true- openmeteo:    label: Pipe Creek, TX    latitude: 29.538    longitude: -98.524    units: imperial    timezone: America/Chicago

docker.yaml

my-docker:  socket: /var/run/docker.sock

bookmarks.yaml

---- Accessibility_Resources:    - WebAIM Accessibility Tools:        abbr: WT        href: https://webaim.org/resources/        description: Tools and resources for web accessibility testing.    - A11Y Project:        abbr: AP        href: https://www.a11yproject.com/        description: Community-driven effort to make web accessibility easier.    - W3C Web Accessibility Initiative:        abbr: WA        href: https://www.w3.org/WAI/        description: Guidelines and resources for web accessibility.    - WCAG Guidelines:        abbr: WG        href: https://www.w3.org/WAI/WCAG22/quickref/        description: Quick reference for WCAG 2.1 guidelines.    - Accessibility Resources:        abbr: AR        href: https://www.w3.org/WAI/resources/        description: Comprehensive resources for web accessibility.    - Accessibility Tools:        abbr: AT        href: https://www.w3.org/WAI/test-evaluate/        description: Tools for testing and evaluating web accessibility.    - Accessibility Tutorials:        abbr: TU        href: https://www.w3.org/WAI/tutorials/        description: Tutorials on web accessibility best practices.    - WebAlign:        abbr: WL        href: https://members.convergeaccessibility.com/member-log-in/        description: Online tool for creating accessible web content.    - Contrast Checker:        abbr: CC        href: https://webaim.org/resources/contrastchecker/        description: Tool for checking color contrast ratios for accessibility.- Automation:    - Apprise Documentation:        abbr: AD        href: https://github.com/caronc/apprise/wiki/        description: Notification management tool supporting multiple services.    - Home Assistant Community:        abbr: HC        href: https://community.home-assistant.io/        description: Forum for Home Assistant users to discuss automation setups.    - Home Assistant Documentation:        abbr: HD        href: https://www.home-assistant.io/docs/        description: Official documentation for Home Assistant.    - Home Assistant Blog:        abbr: HB        href: https://www.home-assistant.io/blog/        description: Updates and news about Home Assistant.- Communication:    - Shlink Documentation:        abbr: SD        href: https://shlink.io/documentation/        description: Learn how to set up and manage Shlink.    - Element:        abbr: EL        href: https://chat.tchncs.de/        description: Secure messaging and collaboration platform.    - Outlook:        abbr: OL        href: https://outlook.office365.com/        description: Email and calendar service from Microsoft.    - Google Messages:        abbr: GM        href: https://messages.google.com/        description: SMS and MMS messaging service from Google.    - Enafore:        abbr: EN        href: https://enafore.social/        description: Alternative frontend for Mastodon, a decentralized social network.    - Mastodon:        abbr: MA        href: https://allovertheplace.ca/        description: Decentralized social network platform.    - Discord:        abbr: DC        href: https://discord.com/        description: Voice, video, and text chat platform for communities.- Developer:    - freeCodeCamp:        abbr: FC        href: https://www.freecodecamp.org/        description: Learn to code with free tutorials and projects.    - MDN Web Docs:        abbr: MD        href: https://developer.mozilla.org/        description: Comprehensive web development documentation.    - GitHub:        abbr: GH        href: https://github.com/        description: Code hosting, collaboration, and version control.    - Stack Overflow:        abbr: SO        href: https://stackoverflow.com/        description: Community-driven Q&A for programmers.    - GitLab:        abbr: GL        href: https://gitlab.com/        description: Web-based DevOps lifecycle tool providing a Git repository manager.- Information_Management:    - AppleVis:        abbr: AV        href: https://www.applevis.com/        description: Community for blind and low-vision users of Apple products.    - BibleGateway:        abbr: BG        href: https://www.biblegateway.com/        description: Search and read the Bible in multiple translations.    - Bible Resources:        abbr: BR        href: https://biblehub.com/        description: Online Bible study tools and comprehensive resources.    - YouVersion:        abbr: YV        href: https://www.youversion.com/        description: Bible app with various translations and reading plans.    - Bible Study Fellowship:        abbr: BS        href: https://www.bsfinternational.org/        description: Bible study resources and community.    - Bookshare:        abbr: BK        href: https://www.bookshare.org/        description: Accessible online library for people with print disabilities.    - BARD:        abbr: BD        href: https://nlsbard.loc.gov/        description: Braille and Audio Reading Download service for eligible users.    - Audible:        abbr: AU        href: https://www.audible.com/        description: Audiobook and spoken word entertainment service.- Productivity:    - CCU Library:        abbr: CL        href: https://www.ccu.edu/academics/library/        description: Access CCU library resources for research and study.    - ReadWorks:        abbr: RW        href: https://www.readworks.org/        description: Reading passages and comprehension activities.    - Perplexity AI:        abbr: PA        href: https://perplexity.ai/        description: AI-powered search with detailed, conversational responses.- Education:    - Codecademy:        abbr: CA        href: https://www.codecademy.com/        description: Interactive coding lessons for various languages.    - NFB:        abbr: NF        href: https://nfb.org/        description: Resources for Braille transcription and blind community.    - Canvas:        abbr: CV        href: https://canvas.instructure.com/        description: Learning management system for online courses.- Gaming_Entertainment:    - AudioGames:        abbr: AG        href: https://forum.audiogames.net/        description: Community for audio-based and accessible games.    - IncrementalDB:        abbr: ID        href: https://incrementaldb.com/        description: Database of incremental games.    - Galaxy Click:        abbr: GC        href: https://galaxy.click/        description: Open-source website for finding incremental games.- Shopping:    - InnoSearch AI:        abbr: IS        href: https://innosearch.ai/        description: Accessible e-commerce platform designed for blind users.    - Amazon:        abbr: AZ        href: https://www.amazon.com/        description: Online shopping platform with a wide range of products.    - eBay:        abbr: EB        href: https://www.ebay.com/        description: Online auction and shopping website.    - Walmart:        abbr: WM        href: https://www.walmart.com/        description: Online shopping platform with a wide range of products.    - Best Buy:        abbr: BB        href: https://www.bestbuy.com/        description: Online shopping platform for electronics and appliances.

services.yaml

---- Automation:    - Home Assistant:        href: https://homeassistant.laniecarmelo.tech/        description: Home automation platform        server: my-docker        container: homeassistant    - N8N:        href: https://n8n.laniecarmelo.tech/        description: Workflow automation tool        server: my-docker        container: n8n    - Ntfy:        href: https://ntfy.laniecarmelo.tech/        description: Self-hosted notification service        server: my-docker        container: ntfy- Communication:    - Shlink:        href: https://app.shlink.io/        description: URL shortener and link management        server: my-docker        container: shlink    - TheLounge:        href: https://irc.laniecarmelo.tech/        description: Web-based IRC client- Developer:    - Forgejo:        href: https://git.laniecarmelo.tech/        description: My Git server        widget:            type: gitea            url: https://git.laniecarmelo.tech/            key: redacted    - PrivateBin:        href: https://paste.laniecarmelo.tech/        description: Pastebin for sharing code snippets- Information_Management:    - Linkding:        href: https://bookmarks.laniecarmelo.tech/        description: Self-hosted bookmark manager        server: my-docker        container: linkding    - MiniFlux:        href: https://rss.laniecarmelo.tech/        description: Self-hosted RSS feed reader        widget:                 type: miniflux            url: https://rss.laniecarmelo.tech/            key: redacted    - RSS-Bridge:        href: https://rss-bridge.laniecarmelo.tech/        description: RSS feed generator for various websites        server: my-docker        container: rss-bridge    - SearXNG:        href: https://search.laniecarmelo.tech/        description: Self-hosted metasearch engine    - Wallabag:        href: https://read.laniecarmelo.tech/        description: Self-hosted read-it-later service        server: my-docker        container: wallabag- Monitoring:    - Beszel:        href: https://beszel.laniecarmelo.tech/        description: Server monitoring and alerts        widget:            type: beszel            url: https://beszel.laniecarmelo.tech/            version: 2            username: redacted            password: redacted            systemId: redacted    - Caddy:        href: https://caddy.laniecarmelo.tech/        description: Reverse proxy and SSL management        widget:            type: caddy            url: https://caddy.laniecarmelo.tech/    - Uptime Kuma:        href: https://uptime.laniecarmelo.tech/        description: Uptime monitoring and status page        server: my-docker        container: uptime-kuma        widget:            type: uptimekuma            url: https://uptime.laniecarmelo.tech/            slug: home    - Watchtower:        description: Docker container update monitoring        server: my-docker        container: watchtower        widget:            type: watchtower            url: http://192.168.1.137:3014/            key: redacted- Productivity:    - Beaver Habit Tracker:        href: https://habits.laniecarmelo.tech/        description: Habit tracking and productivity        server: my-docker        container: beaverhabits    - Calendar:        description: My Outlook calendar        widget:            type: calendar            firstDayInWeek: sunday            view: agenda            showTime: true            timezone: America/Chicago            integrations:                - type: ical                  url: redacted                  name: Outlook    - Joplin Server:        href: https://notes.laniecarmelo.tech/        description: Notes and knowledge management        server: my-docker        container: joplin_server    - Mealie:        href: https://recipes.laniecarmelo.tech/        description: Recipe management and meal planning        server: my-docker        container: mealie        widget:            type: mealie            url: https://recipes.laniecarmelo.tech/            key: redacted            version: 2- Server_Management:    - Cockpit:        href: https://cockpit.laniecarmelo.tech/        description: Web-based server management interface    - Dockge:        href: https://dockge.laniecarmelo.tech/        description: Docker management interface        server: my-docker        container: stacks-dockge-1    - Dozzle:        href: https://dozzle.laniecarmelo.tech/        description: Docker container logs viewer        server: my-docker        container: dozzle    - Tailscale (Raspberry Pi):        href: https://login.tailscale.com/        description: Zero-config mesh VPN        widget:            type: tailscale            deviceid: redacted            key: redacted    - Tailscale (Mini PC):        href: https://login.tailscale.com/        description: Zero-config mesh VPN        widget:            type: tailscale            deviceid: redacted            key: redacted    - Tailscale (iPhone):        href: https://login.tailscale.com/        description: Zero-config mesh VPN        widget:            type: tailscale            deviceid: redacted            key: redacted    - Tailscale (Google Pixel 9 Pro):        href: https://login.tailscale.com/        description: Zero-config mesh VPN        widget:            type: tailscale            deviceid: redacted            key: redacted

settings.yaml

title: Stormux Dashboarddescription: Links to and information about my self-hosted services and most-used sitesbase: https://home.laniecarmelo.techtheme/: darklanguage: entarget: _blankquicklaunch:  searchDescriptions: true  showSearchSuggestions: true  provider: custom  url: https://search.laniecarmelo.tech/search?q=%25s  suggestionUrl: https://search.laniecarmelo.tech/autocompleter?q=%25slayout:  # Assign each group to a tab  Accessibility_Resources:    tab: Accessibility_Resources  Automation:    tab: Automation  Communication:    tab: Communication  Developer:    tab: Developer  Education:    tab: Education  Gaming_Entertainment:    tab: Gaming_Entertainment  Information_Management:    tab: Information_Management  Monitoring:    tab: Monitoring  Productivity:    tab: Productivity  Server_Management:    tab: Server_Management  Shopping:    tab: ShoppingshowStats: true

compose.yaml

services:  homepage:    image: ghcr.io/gethomepage/homepage:latest    container_name: homepage    ports:      - 3000:3000    volumes:      - ./config:/app/config # Make sure your local config directory exists      - /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations    environment:      HOMEPAGE_ALLOWED_HOSTS: home.laniecarmelo.tech,192.168.1.137:3000,stormux:3000      LOG_LEVEL: debug    restart: unless-stopped

If you’ve encountered this issue before or have insights into resolving it, I’d greatly appreciate your help! πŸ™

Hashtags:

#SelfHosting #HomepageDashboard #WebDev #Accessibility #YAML #Bookmarks #OpenSource

Thank you in advance! 😊

@selfhosted @selfhost @[email protected] @[email protected]

 

Hi all. Hoping someone in the #SelfHosting community can help. I'm trying to set up #Linkwarden in #Docker behind #Caddy. The service is running, but I'm unable to create a user account. This is what I see in my browser console when I try:

register:1 [Intervention] Images loaded lazily and replaced with placeholders. Load events are deferred. See https://go.microsoft.com/fwlink/?linkid=2048113register%3A1 [DOM] Input elements should have autocomplete attributes (suggested: "new-password"): (More info: https://www.chromium.org/developers/design-documents/create-amazing-password-forms) <input data-testid=​"password-input" type=​"password" placeholder=​"β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’" class=​"w-full rounded-md p-2 border-neutral-content border-solid border outline-none focus:​border-primary duration-100 bg-base-100" value=​"tyq5ghp!QVH-mva1agc">register:1 [DOM] Input elements should have autocomplete attributes (suggested: "new-password"): (More info: https://www.chromium.org/developers/design-documents/create-amazing-password-forms) <input data-testid=​"password-confirm-input" type=​"password" placeholder=​"β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’β€’" class=​"w-full rounded-md p-2 border-neutral-content border-solid border outline-none focus:​border-primary duration-100 bg-base-100" value=​"tyq5ghp!QVH-mva1agc">Errorapi/v1/users:1 Request unavailable in the network panel, try reloading the inspected page Failed to load resource: the server responded with a status of 400 () Failed to load resource: the server responded with a status of 400 ()

compose file:

services:  postgres:    image: postgres:16-alpine    container_name: linkwarden_postgres    env_file: .env    restart: always    volumes:      - ./pgdata:/var/lib/postgresql/data    networks:      - linkwarden_net  linkwarden:    env_file: .env    environment:      - DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@linkwarden_postgres:5432/postgres    restart: always    # build: . # uncomment this line to build from source    image: ghcr.io/linkwarden/linkwarden:latest # comment this line to build from source    container_name: linkwarden    ports:      - 3009:3000    volumes:      - ./data:/data/data    networks:      - linkwarden_net    depends_on:      - postgresnetworks:  linkwarden_net:    driver: bridge

Relevant part of .env file:

NEXTAUTH_URL=https://bookmarks.laniecarmelo.tech/api/v1/authNEXTAUTH_SECRET=x8az9q9w8ofAxnrVcer2vsPHeMmKSPbf Manual installation database settings# Example: DATABASE_URL=postgresql://user:password@localhost:5432/linkwardenDATABASE_URL= Docker installation database settingsPOSTGRES_PASSWORD=redacted# Additional Optional SettingsPAGINATION_TAKE_COUNT=STORAGE_FOLDER=AUTOSCROLL_TIMEOUT=NEXT_PUBLIC_DISABLE_REGISTRATION=falseNEXT_PUBLIC_CREDENTIALS_ENABLED=true

Caddyfile snippet

*.laniecarmelo.tech {    tls redacted {        dns cloudflare redacted    }    header {        Content-Security-Policy "default-src 'self' https: 'unsafe-inline' 'unsafe-eval';             img-src https: data:;             font-src 'self' https: data:;             frame-src 'self' https:;             object-src 'none'"        Referrer-Policy "strict-origin-when-cross-origin"        Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"        X-Content-Type-Options "nosniff"        X-Xss-Protection "1; mode=block"    }    encode br gzip    # Bookmarks    @bookmarks host bookmarks.laniecarmelo.tech    handle @bookmarks {        reverse_proxy 127.0.0.1:3009    }}

Can anyone help? I have no idea how to fix this.
#SelfHosted #CaddyServer #Linux #Tech #Technology
@selfhost @selfhosted @selfhosting

1
Hi everyone, (allovertheplace.ca)
 

Hi everyone,

I'm encountering an issue with my self-hosted setup using Caddy 2.9.1 and Authelia 4.38.19. All domains except auth.laniecarmelo.tech return a 401 Unauthorized error. Journald logs suggest issues with insecure schemes ('') instead of https or wss.

Details:

  • Setup: Caddy as reverse proxy, Authelia for authentication
  • Domains: AdGuard Home, Forgejo, LinkAce, MiniFlux, TheLounge, Homepage, Beszel, Glances, Uptime Kuma, Tandoor Recipes, BookStack, Watchtower, Portainer
  • Logs:
    Authelia:
    Feb 24 21:01:47 stormux authelia[2932]: level=error msg="Target URL '/' has an insecure scheme '', only 'https' and 'wss' are supported"Caddy:
    Feb 24 21:19:41 stormux caddy[48845]: {"msg":"handled request","method":"GET","host":"adguard.laniecarmelo.tech","status":200}

Configurations:

Curl Output:

HTTP Request:

$ curl home.laniecarmelo.tech -v< HTTP/1.1 308 Permanent Redirect< Location: https://home.laniecarmelo.tech/

HTTPS Request:

$ curl https://home.laniecarmelo.tech/ -v< HTTP/2 401 < content-type: text/plain; charset=utf-8< server: Caddy401 Unauthorized

Does anyone know what might be causing this? I suspect it could be related to forward_auth or trusted proxies.

Thanks in advance! πŸ™

#SelfHosting #CaddyServer #Authelia #ReverseProxy #TechHelp #Linux #HomeLab
@selfhost @selfhosting @selfhosted

1
submitted 2 months ago* (last edited 2 months ago) by [email protected] to c/[email protected]
 

Need help with #Caddy configuration. Getting error:
"Error: adapting config using caddyfile: /etc/caddy/Caddyfile:20: parsed 'header' as a site address, but it is a known directive; directives must appear in a site block"

Running #LinkAce behind Caddy. Config has global options block, site blocks for subdomains, and snippets for common configs. Error persists despite:

  • Proper indentation
  • Blank lines between blocks
  • Snippets after global block
  • Valid header directives

Full config: https://privatebin.io/?e2b50660d40b8463#Awoq9mqdg5nyNB25xvd1zB8L7mX5m9e9sZJDguegJL2G
Password: bka@zhj@btc4FPR!emr

#SelfHosted #Docker #ReverseProxy #WebDev #Linux #HomeLab
@selfhost @selfhosted @selfhosting

 

#SelfHosted #LinkAce Bookmark Manager Running, but Unable to Check for Updates or Generate a Cron Token

Hi all. Hoping someone in the #SelfHosting community can help here. I'm running LinkAce in #Docker behind non-Dockerized #Caddy and #Authelia, and most things are working, but I'm seeing "Could not check for updates" at the bottom of each page, and when I tried to generate a cron token, nothing happened except for the generate button graying out. I am seeing one or two 404 errors in my logs, but I don't know if that's causing the problem or not. I don't know much about #PHP applications.

Logs

2025-02-22 23:25:26,460 INFO supervisord started with pid 12025-02-22 23:25:27,465 INFO spawned: 'php-fpm' with pid 82025-02-22 23:25:27,467 INFO spawned: 'caddy' with pid 9[22-Feb-2025 23:25:27] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root[22-Feb-2025 23:25:27] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root[22-Feb-2025 23:25:27] NOTICE: fpm is running, pid 8[22-Feb-2025 23:25:27] NOTICE: ready to handle connections{"level":"info","ts":1740266727.5264525,"msg":"using config from file","file":"/etc/caddy/Caddyfile"}{"level":"info","ts":1740266727.5280282,"msg":"adapted config to JSON","adapter":"caddyfile"}{"level":"warn","ts":1740266727.5280406,"msg":"Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies","adapter":"caddyfile","file":"/etc/caddy/Caddyfile","line":2}{"level":"info","ts":1740266727.529092,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}{"level":"warn","ts":1740266727.529331,"logger":"http.auto_https","msg":"server is listening only on the HTTP port, so no automatic HTTPS will be applied to this server","server_name":"srv0","http_port":80}{"level":"info","ts":1740266727.5294206,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0x40000bab00"}{"level":"warn","ts":1740266727.530186,"logger":"http","msg":"HTTP/2 skipped because it requires TLS","network":"tcp","addr":":80"}{"level":"warn","ts":1740266727.530195,"logger":"http","msg":"HTTP/3 skipped because it requires TLS","network":"tcp","addr":":80"}{"level":"info","ts":1740266727.530198,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}{"level":"info","ts":1740266727.5412574,"msg":"autosaved config (load with --resume flag)","file":"/home/www-data/.config/caddy/autosave.json"}{"level":"info","ts":1740266727.541271,"msg":"serving initial configuration"}{"level":"info","ts":1740266727.5477707,"logger":"tls","msg":"cleaning storage unit","storage":"FileStorage:/home/www-data/.local/share/caddy"}{"level":"info","ts":1740266727.5541356,"logger":"tls","msg":"finished cleaning storage units"}2025-02-22 23:25:28,555 INFO success: php-fpm entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)2025-02-22 23:25:28,555 INFO success: caddy entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)::1 -  22/Feb/2025:23:25:34 +0000 "GET /index.php" 200::1 -  22/Feb/2025:23:25:34 +0000 "GET /index.php" 404

Docker Compose file

services:  #
***
LinkAce  linkace:    image: docker.io/linkace/linkace:latest    container_name: linkace    restart: unless-stopped    depends_on:      - linkace_db    ports:      - "0.0.0.0:3009:80"    volumes:      - ./.env:/app/.env      - ./backups:/app/storage/app/backups  #
***
Database  linkace_db:    image: docker.io/library/mariadb:11.5    container_name: linkace_db    restart: unless-stopped    command: mariadbd --character-set-server=utf8mb4 --collation-server=utf8mb4_bin    environment:      - MYSQL_ROOT_PASSWORD=${DB_PASSWORD}      - MYSQL_USER=${DB_USERNAME}      - MYSQL_PASSWORD=${DB_PASSWORD}      - MYSQL_DATABASE=${DB_DATABASE}    volumes:      - db:/var/lib/mysql  #
***
Cache  linkace_redis:    image: docker.io/bitnami/redis:7.4    container_name: linkace_redis    restart: unless-stopped    environment:      - REDIS_PASSWORD=${REDIS_PASSWORD}volumes:  db:

.env (secrets redacted)

## LINKACE CONFIGURATION# The app key is generated later, please leave it like thatAPP_KEY=redactedAPP_ENV=development## Configuration of the database connection## Attention: Those settings are configured during the web setup, please do not modify them now.# Set the database driver (mysql, pgsql, sqlsrv, sqlite)DB_CONNECTION=mysql# Set the host of your database hereDB_HOST=linkace_db# Set the port of your database hereDB_PORT=3306# Set the database name hereDB_DATABASE=linkace# Set both username and password of the user accessing the databaseDB_USERNAME=linkace# Wrap your password into quotes (") if it contains special charactersDB_PASSWORD=redacted## Redis cache configuration# Set the Redis connection here if you want to use itREDIS_HOST=linkace_redisREDIS_PASSWORD=redactedREDIS_PORT=6379APP_DEBUG=true# SSO configurationSSO_ENABLED=trueSSO_OIDC_ENABLED=trueSSO_REGISTRATION_ENABLED=trueREGULAR_LOGIN_DISABLED=trueSSO_OIDC_BASE_URL=https://auth.laniecarmelo.tech/  # Your Authelia base URLSSO_OIDC_CLIENT_ID=linkaceSSO_OIDC_CLIENT_SECRET='redacted'SSO_OIDC_SCOPES=openid,profile,email

Caddyfile snippet

{    email [email protected]    debug    acme_dns cloudflare redacted    http_port 80    https_port 443    admin :2019 {        origins 127.0.0.1:2019 0.0.0.0:2019 stormux:2019 caddy.laniecarmelo.tech    }}(logconfig) {    log {        output stdout        format json    }}(auth_headers) {    header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"}(proxy_config) {    header_up Host {http.request.host}    header_up X-Real-IP {http.request.remote}    header_up X-Forwarded-User {http.auth.user.id} # Pass user ID    header_up X-Forwarded-Email {http.auth.user.email} # Pass email}(authelia_middleware) {    forward_auth localhost:9091 {        uri /api/verify?rd=https://auth.laniecarmelo.tech/        copy_headers Remote-User Remote-Email Remote-Groups Authorization    }}bookmarks.laniecarmelo.tech {    route {        import authelia_middleware        reverse_proxy localhost:3009 {  # Directly proxy to LinkAce's web server            import proxy_config        }    }    import logconfig    import auth_headers}

Authelia config snippet

    - domain: "*.laniecarmelo.tech"      policy: bypass      networks:        - 192.168.1.0/24    # Local network        - 172.17.0.0/16     # Docker bridge network        - 100.64.0.0/10     # Tailscale network    - domain: "bookmarks.laniecarmelo.tech"      resources: ["^/api.*"]      policy: bypass    - domain: "*.laniecarmelo.tech"      policy: one_factor            - client_id: linkace        client_name: LinkAce bookmarking app        client_secret: redacted         public: false        authorization_policy: one_factor        scopes: [openid, groups, profile, email, offline_access]        redirect_uris:          - https://bookmarks.laniecarmelo.tech/auth/oidc/callback        grant_types: [authorization_code]        response_types: [code]        response_modes: [form_post, query]        userinfo_signed_response_alg: none        consent_mode: explicit        pre_configured_consent_duration: "1y"

Does anyone know what might be causing this and how I can fix it?
#Linux #ArchLinuxARM #Stormux #RaspberryPi #RaspberryPi500 #RPi #RPi500 #tech #technology
@selfhost @selfhosted @selfhosting

 

#MiniFlux users, can anyone help?

Hi all. I'm having some issues with MiniFlux, a #SelfHosted #RSSReader, and hoping someone can help. MiniFlux was working fine until I tried to deploy ReactFlux on the same domain as it, rss.laniecarmelo.tech, on a subpath, /reactflux. This didn't work so I removed ReactFlux. I also migrated MiniFlux from #Docker to #Pacman package, thinking it would be easier on my system. This problem, or a similar one, was occurring before I did that though.

Now, rss.laniecarmelo.tech loads the MiniFlux login page, but when I login, it redirects to a blank page at rss.laniecarmelo.tech/login. I've added trusted proxies and cookie configuration to my miniflux.conf and headers to my Caddyfile, but I still have the issue.

I'm using #Caddy for #ReverseProxy and #Cloudflare for #SSO. Has anyone seen anything like this before? This is on a #RaspberryPi500 running #ArchLinuxARM.

I've checked MiniFlux logs, and it's getting the login requests and creating sessions. I'm not sure what's happening after that. Cloudflared and Caddy seem to be working normally.

#SelFhosting #Linux #RSS #RaspberryPi #RPi #tech #technology
@selfhost @selfhosted @selfhosting