App discover not loading images and videos

The Basics

  • Nextcloud Server version:
    • 30.0.4
  • Operating system and version:
    • Docker on Windows 10
  • Reverse proxy and version:
    • None
  • PHP version:
    • 8.3.14
  • Is this the first time you’ve seen this error? (Yes / No):
    • No, seeing this since at least one older version
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • AIO 10.2.0
  • Are you using CloudfIare, mod_security, or similar? (Yes / No)
    • No

Summary of the issue you are facing:

When the Appstore is opened, the images and videos of app discover do not load.
This is only an issue as it produces an error in the logs; I would be glad about a way to simply turn app discover off.

However, it may also be an indicator that my network configuration is broken, as hinted in this thread. Yet, I did not change anything from the standard settings in the AIO so I find this possibility unlikely.

I can open the links in the browser without problem on my client computer as well as on the host.

Screenshot:

Steps to replicate it (hint: details matter!):

  1. Open Appstore

Log entries

Nextcloud

{
  "reqId": "[...]",
  "level": 3,
  "time": "2025-01-11T16:15:45+00:00",
  "remoteAddr": "127.0.0.1",
  "user": "[Admin-account]",
  "app": "index",
  "method": "GET",
  "url": "/settings/api/apps/media?fileName=https%3A%2F%2Fgithub.com%2Fnextcloud%2Ffirstrunwizard%2Fraw%2Fmaster%2Fimg%2FNextcloud.webm",
  "message": "Exception thrown: OCP\\Files\\NotFoundException",
  "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0",
  "version": "30.0.4.1",
  "exception": {
    "Exception": "OCP\\Files\\NotFoundException",
    "Message": "",
    "Code": 0,
    "Trace": [
      {
        "file": "/var/www/html/lib/private/Files/Node/Folder.php",
        "line": 81,
        "function": "getFileInfo",
        "class": "OC\\Files\\Node\\Node",
        "type": "->",
        "args": [
          false
        ]
      },
      {
        "file": "/var/www/html/lib/private/Files/SimpleFS/SimpleFolder.php",
        "line": 33,
        "function": "getDirectoryListing",
        "class": "OC\\Files\\Node\\Folder",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/apps/settings/lib/Controller/AppSettingsController.php",
        "line": 149,
        "function": "getDirectoryListing",
        "class": "OC\\Files\\SimpleFS\\SimpleFolder",
        "type": "->",
        "args": []
      },
      {
        "file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
        "line": 208,
        "function": "getAppDiscoverMedia",
        "class": "OCA\\Settings\\Controller\\AppSettingsController",
        "type": "->",
        "args": [
          "https://github.com/nextcloud/firstrunwizard/raw/master/img/Nextcloud.webm"
        ]
      },
      {
        "file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
        "line": 114,
        "function": "executeController",
        "class": "OC\\AppFramework\\Http\\Dispatcher",
        "type": "->",
        "args": [
          {
            "__class__": "OCA\\Settings\\Controller\\AppSettingsController"
          },
          "getAppDiscoverMedia"
        ]
      },
      {
        "file": "/var/www/html/lib/private/AppFramework/App.php",
        "line": 161,
        "function": "dispatch",
        "class": "OC\\AppFramework\\Http\\Dispatcher",
        "type": "->",
        "args": [
          {
            "__class__": "OCA\\Settings\\Controller\\AppSettingsController"
          },
          "getAppDiscoverMedia"
        ]
      },
      {
        "file": "/var/www/html/lib/private/Route/Router.php",
        "line": 302,
        "function": "main",
        "class": "OC\\AppFramework\\App",
        "type": "::",
        "args": [
          "OCA\\Settings\\Controller\\AppSettingsController",
          "getAppDiscoverMedia",
          {
            "__class__": "OC\\AppFramework\\DependencyInjection\\DIContainer"
          },
          {
            "_route": "settings.appsettings.getappdiscovermedia"
          }
        ]
      },
      {
        "file": "/var/www/html/lib/base.php",
        "line": 1003,
        "function": "match",
        "class": "OC\\Route\\Router",
        "type": "->",
        "args": [
          "/settings/api/apps/media"
        ]
      },
      {
        "file": "/var/www/html/index.php",
        "line": 24,
        "function": "handleRequest",
        "class": "OC",
        "type": "::",
        "args": []
      }
    ],
    "File": "/var/www/html/lib/private/Files/Node/Node.php",
    "Line": 90,
    "message": "",
    "exception": [],
    "CustomMessage": "Exception thrown: OCP\\Files\\NotFoundException"
  },
  "id": "[...]"
}

Web Browser

GET
https://[My-cloud-URL]/settings/api/apps/media?fileName=https://nextcloud.com/c/uploads/2024/09/Nextcloud-Hub-9-1024x576.jpg
[HTTP/2 500  126ms]

GET
https://[My-cloud-URL]/settings/api/apps/media?fileName=https://github.com/nextcloud/firstrunwizard/raw/master/img/Nextcloud.webm
NS_BINDING_ABORTED

HTTP-Laden ist mit dem Status 500 fehlgeschlagen. Laden der Medienressource https://[My-cloud-URL]/settings/api/apps/media?fileName=https%3A%2F%2Fgithub.com%2Fnextcloud%2Ffirstrunwizard%2Fraw%2Fmaster%2Fimg%2FNextcloud.webm fehlgeschlagen. discover

GET
https://[My-cloud-URL]/settings/api/apps/media?fileName=https://github.com/nextcloud/firstrunwizard/raw/master/img/Nextcloud.mp4
[HTTP/2 500  117ms]

HTTP-Laden ist mit dem Status 500 fehlgeschlagen. Laden der Medienressource https://[My-cloud-URL]/settings/api/apps/media?fileName=https%3A%2F%2Fgithub.com%2Fnextcloud%2Ffirstrunwizard%2Fraw%2Fmaster%2Fimg%2FNextcloud.mp4 fehlgeschlagen. discover
Alle Kandidaten für die Ressource konnten nicht geladen werden. Medien-Laden pausiert. discover

Web server / Reverse Proxy

No log in /var/log/____; output of the Apache container’s log:

2025-01-11 16:39:31 {"level":"error","ts":1736609971.4457364,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"127.0.0.1:8000","duration":0.271117877,"request":{"remote_ip":"172.18.0.1","remote_port":"44660","client_ip":"172.18.0.1","proto":"HTTP/2.0","method":"GET","host":"[My-cloud-URL]","uri":"/apps/files_pdfviewer/js/files_pdfviewer-main.js?v=1ca13fe7-29","headers":{"Sec-Fetch-Dest":["script"],"X-Forwarded-For":["172.18.0.1"],"X-Forwarded-Proto":["https"],"X-Forwarded-Host":["[My-cloud-URL]"],"Accept":["*/*"],"Sec-Fetch-Site":["same-origin"],"Accept-Encoding":["gzip, deflate, br"],"Cookie":["REDACTED"],"User-Agent":["Mozilla/5.0 (iPhone; CPU iPhone OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Mobile/15E148 Safari/604.1"],"Sec-Fetch-Mode":["no-cors"],"Accept-Language":["de-DE,de;q=0.9"],"Priority":["u=1, i"]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":"[My-cloud-URL]"}},"error":"reading: context canceled"}

2025-01-11 16:39:31 {"level":"error","ts":1736609971.4458575,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"127.0.0.1:8000","duration":0.297210799,"request":{"remote_ip":"172.18.0.1","remote_port":"44660","client_ip":"172.18.0.1","proto":"HTTP/2.0","method":"GET","host":"[My-cloud-URL]","uri":"/apps/viewer/js/viewer-init.mjs?v=1ca13fe7-29","headers":{"X-Forwarded-Host":["[My-cloud-URL]"],"Origin":["[My-cloud-URL]"],"Accept-Language":["de-DE,de;q=0.9"],"Priority":["u=1, i"],"Accept-Encoding":["gzip, deflate, br"],"Sec-Fetch-Site":["same-origin"],"Cookie":["REDACTED"],"User-Agent":["Mozilla/5.0 (iPhone; CPU iPhone OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Mobile/15E148 Safari/604.1"],"Accept":["*/*"],"Sec-Fetch-Dest":["script"],"Sec-Fetch-Mode":["cors"],"X-Forwarded-For":["172.18.0.1"],"X-Forwarded-Proto":["https"]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":[My-cloud-URL]}},"error":"reading: context canceled"}

2025-01-11 16:39:31 {"level":"error","ts":1736609971.4459527,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"127.0.0.1:8000","duration":0.232226257,"request":{"remote_ip":"172.18.0.1","remote_port":"44660","client_ip":"172.18.0.1","proto":"HTTP/2.0","method":"GET","host":"[My-cloud-URL]","uri":"/dist/core-main.js?v=1ca13fe7-29","headers":{"Priority":["u=1, i"],"X-Forwarded-For":["172.18.0.1"],"X-Forwarded-Host":["[My-cloud-URL]"],"Sec-Fetch-Mode":["no-cors"],"Sec-Fetch-Dest":["script"],"Accept":["*/*"],"Sec-Fetch-Site":["same-origin"],"Cookie":["REDACTED"],"X-Forwarded-Proto":["https"],"Accept-Language":["de-DE,de;q=0.9"],"Accept-Encoding":["gzip, deflate, br"],"User-Agent":["Mozilla/5.0 (iPhone; CPU iPhone OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Mobile/15E148 Safari/604.1"]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":[My-cloud-URL]}},"error":"reading: context canceled"}

2025-01-11 16:39:31 {"level":"error","ts":1736609971.4460866,"logger":"http.handlers.reverse_proxy","msg":"aborting with incomplete response","upstream":"127.0.0.1:8000","duration":0.019253749,"request":{"remote_ip":"172.18.0.1","remote_port":"44660","client_ip":"172.18.0.1","proto":"HTTP/2.0","method":"GET","host":[My-cloud-URL],"uri":"/dist/core-common.js?v=1ca13fe7-29","headers":{"Priority":["u=1, i"],"Accept-Encoding":["gzip, deflate, br"],"Sec-Fetch-Mode":["no-cors"],"Cookie":["REDACTED"],"Sec-Fetch-Dest":["script"],"Accept":["*/*"],"Sec-Fetch-Site":["same-origin"],"Accept-Language":["de-DE,de;q=0.9"],"User-Agent":["Mozilla/5.0 (iPhone; CPU iPhone OS 18_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Mobile/15E148 Safari/604.1"],"X-Forwarded-For":["172.18.0.1"],"X-Forwarded-Proto":["https"],"X-Forwarded-Host":[[My-cloud-URL]]},"tls":{"resumed":false,"version":772,"cipher_suite":4865,"proto":"h2","server_name":[My-cloud-URL]}},"error":"reading: context canceled"}

Configuration

Nextcloud

{
    "system": {
        "one-click-instance": true,
        "one-click-instance.user-limit": 100,
        "memcache.local": "\\OC\\Memcache\\APCu",
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/custom_apps",
                "url": "\/custom_apps",
                "writable": true
            }
        ],
        "check_data_directory_permissions": false,
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "password": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "overwritehost": "cloud.akademie-siebenburg.de",
        "overwriteprotocol": "https",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "***REMOVED SENSITIVE VALUE***"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "pgsql",
        "version": "30.0.4.1",
        "overwrite.cli.url": "https:\/\/cloud.akademie-siebenburg.de\/",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "loglevel": 2,
        "log_type": "file",
        "logfile": "\/var\/www\/html\/data\/nextcloud.log",
        "log_rotate_size": "10485760",
        "log.condition": {
            "apps": [
                "admin_audit"
            ]
        },
        "preview_max_x": 1024,
        "preview_max_y": 512,
        "jpeg_quality": 60,
        "enabledPreviewProviders": {
            "1": "OC\\Preview\\MP3",
            "4": "OC\\Preview\\Krita",
            "5": "OC\\Preview\\Imaginary",
            "6": "OC\\Preview\\Image",
            "7": "OC\\Preview\\HEIC",
            "8": "OC\\Preview\\TIFF",
            "9": "OC\\Preview\\Movie",
            "0": "OC\\Preview\\Imaginary",
            "23": "OC\\Preview\\ImaginaryPDF"
        },
        "enable_previews": true,
        "upgrade.disable-web": true,
        "mail_smtpmode": "smtp",
        "trashbin_retention_obligation": "auto, 30",
        "versions_retention_obligation": "auto, 30",
        "activity_expire_days": "30",
        "simpleSignUpLink.shown": false,
        "share_folder": "\/Shared",
        "one-click-instance.link": "https:\/\/nextcloud.com\/all-in-one\/",
        "upgrade.cli-upgrade-link": "https:\/\/github.com\/nextcloud\/all-in-one\/discussions\/2726",
        "updatedirectory": "\/nc-updater",
        "davstorage.request_timeout": 3600,
        "htaccess.RewriteBase": "\/",
        "dbpersistent": false,
        "files_external_allow_create_new_local": false,
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "allow_local_remote_servers": true,
        "preview_imaginary_url": "***REMOVED SENSITIVE VALUE***",
        "mail_sendmailmode": "smtp",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "465",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "ssl",
        "default_phone_region": "DE",
        "appsallowlist": false,
        "maintenance_window_start": 100,
        "preview_imaginary_key": "***REMOVED SENSITIVE VALUE***",
        "auth.bruteforce.protection.enabled": true,
        "ratelimit.protection.enabled": true,
        "data-fingerprint": "***REMOVED SENSITIVE VALUE***",
        "memories.db.triggers.fcu": true,
        "memories.exiftool": "\/var\/www\/html\/custom_apps\/memories\/bin-ext\/exiftool-amd64-musl",
        "memories.vod.path": "\/var\/www\/html\/custom_apps\/memories\/bin-ext\/go-vod-amd64",
        "memories.vod.ffmpeg": "\/usr\/bin\/ffmpeg",
        "memories.vod.ffprobe": "\/usr\/bin\/ffprobe",
        "defaultapp": "files",
        "documentation_url.server_logs": "https:\/\/github.com\/nextcloud\/all-in-one\/discussions\/5425",
        "forbidden_filename_basenames": [
            "con",
            "prn",
            "aux",
            "nul",
            "com0",
            "com1",
            "com2",
            "com3",
            "com4",
            "com5",
            "com6",
            "com7",
            "com8",
            "com9",
            "com\u00b9",
            "com\u00b2",
            "com\u00b3",
            "lpt0",
            "lpt1",
            "lpt2",
            "lpt3",
            "lpt4",
            "lpt5",
            "lpt6",
            "lpt7",
            "lpt8",
            "lpt9",
            "lpt\u00b9",
            "lpt\u00b2",
            "lpt\u00b3"
        ],
        "forbidden_filename_characters": [
            "<",
            ">",
            ":",
            "\"",
            "|",
            "?",
            "*",
            "\\",
            "\/"
        ],
        "forbidden_filename_extensions": [
            " ",
            ".",
            ".filepart",
            ".part"
        ],
        "onlyoffice": {
            "jwt_secret": "***REMOVED SENSITIVE VALUE***",
            "jwt_header": "AuthorizationJwt"
        },
        "DOMAIN": "***REMOVED SENSITIVE VALUE***"
    }
}

Apps

Enabled:
  - admin_audit: 1.20.0
  - bruteforcesettings: 3.0.0
  - cfg_share_links: 6.1.1
  - cloud_federation_api: 1.13.0
  - comments: 1.20.1
  - contactsinteraction: 1.11.0
  - dashboard: 7.10.0
  - dav: 1.31.1
  - deck: 1.14.2
  - federatedfilesharing: 1.20.0
  - files: 2.2.0
  - files_accesscontrol: 1.20.1
  - files_downloadlimit: 3.0.0
  - files_pdfviewer: 3.0.0
  - files_reminders: 1.3.0
  - files_sharing: 1.22.0
  - files_trashbin: 1.20.1
  - files_versions: 1.23.0
  - files_zip: 2.1.0
  - firstrunwizard: 3.0.0
  - forms: 4.3.4
  - groupfolders: 18.0.8
  - impersonate: 1.17.1
  - larpingapp: 0.1.20
  - login_notes: 1.6.1
  - logreader: 3.0.0
  - lookup_server_connector: 1.18.0
  - mail: 4.1.1
  - memories: 7.4.1
  - nextcloud-aio: 0.7.0
  - notes: 4.11.0
  - notifications: 3.0.0
  - notify_push: 0.7.0
  - oauth2: 1.18.1
  - onlyoffice: 9.5.0
  - ownershiptransfer: 1.0.1
  - password_policy: 2.0.0
  - photos: 3.0.2
  - privacy: 2.0.0
  - provisioning_api: 1.20.0
  - recommendations: 3.0.0
  - related_resources: 1.5.0
  - serverinfo: 2.0.0
  - settings: 1.13.0
  - sharebymail: 1.20.0
  - sharereview: 1.3.3
  - support: 2.0.0
  - systemtags: 1.20.0
  - tasks: 0.16.1
  - text: 4.1.0
  - theming: 2.5.0
  - theming_customcss: 1.18.0
  - twofactor_backupcodes: 1.19.0
  - twofactor_totp: 12.0.0-dev
  - viewer: 3.0.0
  - webhook_listeners: 1.1.0-dev
  - welcome: 1.2.1
  - workflowengine: 2.12.0
Disabled:
  - activity: 3.0.0 (installed 2.19.0)
  - app_api: 4.0.3 (installed 4.0.0)
  - circles: 30.0.0 (installed 29.0.0-dev)
  - encryption: 2.18.0
  - federation: 1.20.0 (installed 1.17.0)
  - files_archive: 1.2.3 (installed 1.2.3)
  - files_external: 1.22.0
  - nextcloud_announcements: 2.0.0 (installed 1.16.0)
  - polls: 7.2.9 (installed 7.2.9)
  - previewgenerator: 5.7.0 (installed 5.7.0)
  - survey_client: 2.0.0 (installed 1.15.0)
  - suspicious_login: 8.0.0
  - tables: 0.8.3 (installed 0.8.3)
  - twofactor_nextcloud_notification: 4.0.0
  - user_ldap: 1.21.0
  - user_status: 1.10.0 (installed 1.7.0)
  - weather_status: 1.10.0 (installed 1.7.0)
1 Like

Same Problem Here!

in my case the app store does not even load at all and gives me 504 gateway timeout. in fact, logging in into help.nextcloud.com itself is buggy as i keep encountering slow page load and even 500 error code when logging in with github.

update: i routed my connection through a data center instead of using my raw home connection and it starts to work again.

I have exactly the same problem!! Nextcloud Hub 9 (30.0.6)

It’s 100% not about reverse proxying.

I suspect either problems on the side of the web servers nextcloud. Or a problem with redis, aсu php (cache problem).

Any ideas?