The Basics
- Nextcloud Server version (e.g., 29.x.x):
- 30.0.5
- Operating system and version (e.g., Ubuntu 24.04):
- opensuse-tumbleweed 20250501
- Web server and version (e.g, Apache 2.4.25):
- Apache 2.4.62
- Reverse proxy and version _(e.g. nginx 1.27.2)
- nginx:latest (asdfaasdfasdf, 5 month ago)
- PHP version (e.g, 8.3):
- 4.2.27
- Is this the first time you’ve seen this error? (Yes / No):
- Yes
- When did this problem seem to first start?
- since installation
- Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
- docker pull nextcloud:latest
- Are you using CloudfIare, mod_security, or similar? (Yes / No)
- No
Summary of the issue you are facing:
When starting the calendar app, no calendars are shown, only the spinning circle. Creating a new calendar fails with an immediate error message. I use keycloak as an OpenId provider and I have changed the user-id option for the nextcloud openId client to use a provider-prefixed user id that is then shared between nextcloud and keycloak. I had created users before that (with different ids on the nextcloud/keycloak side) which have been deleted. Otherwise, the nextcloud instance is fresh with only a few files created.
Steps to replicate it (hint: details matter!):
- Click on Calendar app
Log entries
There are no log entries generated when starting the calendar app.
Nextcloud
There are no log entries generated when starting the calendar app.
Web Browser
The problem is reproducible in all browsers I checked (Firefox, Chromium, Thorium).
When checking the http traffic, the 404 error occurs when accessing https://host/root/remote.php/dav/principals/users/Keycloak%20(OpenID)-user-id/
Request:
<x0:propfind xmlns:x0="DAV:"><x0:prop><x0:displayname/><x1:calendar-user-type xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x1:calendar-user-address-set xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x0:principal-URL/><x0:alternate-URI-set/><x2:email-address xmlns:x2="http-removed-due-to-link-restriction/sabredav.org/ns"/><x3:language xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x1:calendar-home-set xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x1:schedule-inbox-URL xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x1:schedule-outbox-URL xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x1:schedule-default-calendar-URL xmlns:x1="urn:ietf:params:xml:ns:caldav"/><x3:resource-type xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-type xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-make xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-model xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-is-electric xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-range xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-vehicle-seating-capacity xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-contact-person xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:resource-contact-person-vcard xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-type xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-seating-capacity xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-building-address xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-building-story xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-building-room-number xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x3:room-features xmlns:x3="http-removed-due-to-link-restriction/nextcloud.com/ns"/><x0:principal-collection-set/><x0:supported-report-set/></x0:prop></x0:propfind>
Web server / Reverse Proxy
The output of your Apache/nginx/system log in /var/log/____
:
10.0.0.2 - - [25/May/2025:09:35:18 +0000] "GET /root/apps/calendar/ HTTP/1.1" 200 12864 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "GET /root/ocs/v2.php/search/providers?from=%2Fyroot%2Fapps%2Fcalendar%2F HTTP/1.1" 200 846 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "POST /root/contactsmenu/contacts HTTP/1.1" 200 928 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "PROPFIND /root/remote.php/dav/ HTTP/1.1" 207 454 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "GET /root/ocs/v2.php/apps/user_status/api/v1/user_status HTTP/1.1" 200 194 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "PUT /root/ocs/v2.php/apps/user_status/api/v1/heartbeat?format=json HTTP/1.1" 200 194 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "GET /root/index.php/apps/files/preview-service-worker.js HTTP/1.1" 200 5252 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "GET /root/cron.php HTTP/1.1" 200 20 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "GET /root/ocs/v2.php/apps/notifications/api/v2/notifications HTTP/1.1" 200 81 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "PROPFIND /root/remote.php/dav/principals/calendar-resources/ HTTP/1.1" 207 463 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "PROPFIND /root/remote.php/dav/principals/calendar-rooms/ HTTP/1.1" 207 463 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:19 +0000] "PROPFIND /root/remote.php/dav/principals/users/Keycloak%20(OpenID)-userid/ HTTP/1.1" 404 3015 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - - [25/May/2025:09:35:20 +0000] "GET /root/index.php/apps/files/preview-service-worker.js HTTP/1.1" 200 5252 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0" "-"
10.0.0.2 - Keycloak (OpenID)-userid [25/May/2025:09:35:23 +0000] "GET /root/ocs/v2.php/apps/user_status/api/v1/user_status?format=json HTTP/1.1" 200 194 "-" "Mozilla/5.0 (Linux) mirall/3.16.4daily (Nextcloud, opensuse-tumbleweed-6.14.4-1-default ClientArchitecture: x86_64 OsArchitecture: x86_64)" "-"
10.0.0.2 - Keycloak (OpenID)-userid [25/May/2025:09:35:23 +0000] "GET /root/ocs/v2.php/apps/notifications/api/v2/notifications?format=json HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Linux) mirall/3.16.4daily (Nextcloud, opensuse-tumbleweed-6.14.4-1-default ClientArchitecture: x86_64 OsArchitecture: x86_64)" "-"
10.0.0.2 - Keycloak (OpenID)-userid [25/May/2025:09:35:23 +0000] "PROPFIND /root/remote.php/dav/files/Keycloak%20(OpenID)-userid/ HTTP/1.1" 207 694 "-" "Mozilla/5.0 (Linux) mirall/3.16.4daily (Nextcloud, opensuse-tumbleweed-6.14.4-1-default ClientArchitecture: x86_64 OsArchitecture: x86_64)" "-"
Configuration
Nextcloud
The output of occ config:list system
or similar is best, but, if not possible, the contents of your config.php
file from /path/to/nextcloud
is fine (make sure to remove any identifiable information!):
<?php
$CONFIG = array (
'htaccess.RewriteBase' => '/',
'memcache.local' => '\\OC\\Memcache\\APCu',
'apps_paths' =>
array (
0 =>
array (
'path' => '/var/www/html/apps',
'url' => '/apps',
'writable' => false,
),
1 =>
array (
'path' => '/var/www/html/custom_apps',
'url' => '/custom_apps',
'writable' => true,
),
),
'upgrade.disable-web' => true,
'instanceid' => '***',
'passwordsalt' => '***',
'secret' => '****',
'trusted_domains' =>
array (
0 => 'internal-host.lan:8081',
1 => 'internal-host.lan',
2 => 'localhost',
3 => '10.0.0.2',
4 => 'internal-host',
5 => 'external-host',
),
'trusted_proxies' =>
array (
0 => 'external-ip',
1 => '10.0.0.3',
),
'overwritehost' => 'external-host',
'overwriteprotocol' => 'https',
'datadirectory' => '/var/www/html/data',
'dbtype' => 'mysql',
'version' => '30.0.5.1',
'overwrite.cli.url' => 'https-removed-due-to-link-restriction/external-host/root',
'overwritewebroot' => '/root',
'dbname' => 'nextcloud',
'dbhost' => 'db',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'nextcloud',
'dbpassword' => '***',
'installed' => true,
'app_install_overwrite' =>
array (
0 => 'gluusso',
),
'maintenance' => false,
'allow_local_remote_servers' => true,
'debug' => true,
'loglevel' => 2,
);
Apps
The output of occ app:list
(if possible).
occ
seems unavailable in the nextcloud container