Nextcloud version: 27.0.2
Operating system and version: Docker on Debian GNU/Linux 11 (bullseye)
Apache or nginx version: Apache docker image (27)
The issue you are facing:
When I use the desktop client to sync, I get the error that the client can’t connect because /nextcloud/status.php
can’t be found.
The web interface and the mobile apps are working fine without any problems. I tried the desktop client on Windows and Mac, but both don’t work.
My setup is running behind a Traefik proxy inside of docker. The desktop client worked some time ago, but I’m not sure if it stopped working with version 26 or 27. I have this problem for some time now and tried to solve it, but couldn’t.
I also tried to create a fresh installtion, but I have the same problem, the only difference is, that on the fresh installation when I open <Domain>/nextcloud/status.php
I see a 404 error page from nextcloud, but on the old installtion I see a 404 error page from apache.
Is this the first time you’ve seen this error?: Yes
Steps to replicate it:
- Use this docker-compose file
version: "3.8"
services:
nextcloud-database:
image: mariadb:10.9
container_name: nextcloud-database
hostname: nextcloud-database
environment:
MYSQL_ROOT_PASSWORD: ${DATABASE_ROOT_PASSWORD}
MYSQL_USER: ${DATABASE_USER}
MYSQL_PASSWORD: ${DATABASE_PASSWORD}
MYSQL_DATABASE: ${DATABASE_NAME}
volumes:
- "/opt/nextcloud/database:/var/lib/mysql"
networks:
- nextcloud
nextcloud-redis:
image: redis:alpine
container_name: nextcloud-redis
hostname: nextcloud-redis
restart: on-failure:6
command: redis-server --requirepass ${REDIS_PASSWORD}
networks:
- nextcloud
nextcloud-app:
image: nextcloud:27-apache
container_name: nextcloud
restart: on-failure:3
depends_on:
- nextcloud-database
- nextcloud-redis
labels:
- "traefik.enable=true"
- "traefik.network=traefik"
- "traefik.http.routers.nextcloud-https.rule=Host(`<Domain>`)"
- "traefik.http.routers.nextcloud-https.entrypoints=https"
- "traefik.http.routers.nextcloud-https.middlewares=nextcloud, redirect-to-dav, nextcloud-buffer"
- "traefik.http.routers.nextcloud-https.service=nextcloud"
- "traefik.http.routers.nextcloud-https.tls=true"
- "traefik.http.middlewares.nextcloud.headers.hostsProxyHeaders=X-Forwarded-Host"
- "traefik.http.middlewares.nextcloud.headers.referrerPolicy=same-origin"
- "traefik.http.middlewares.nextcloud.headers.stsSeconds=15552000"
- "traefik.http.middlewares.redirect-to-dav.redirectRegex.permanent=true"
- "traefik.http.middlewares.redirect-to-dav.redirectRegex.regex=https://(.*)/.well-known/(card|cal)dav"
- "traefik.http.middlewares.redirect-to-dav.redirectRegex.replacement=https://$${1}/remote.php/dav/"
- "traefik.http.middlewares.nextcloud-buffer.buffering.maxRequestBodyBytes=6442450944"
- "traefik.http.services.nextcloud.loadbalancer.server.port=80"
environment:
# Database
MYSQL_HOST: ${DATABASE_HOST}
MYSQL_USER: ${DATABASE_USER}
MYSQL_PASSWORD: ${DATABASE_PASSWORD}
MYSQL_DATABASE: ${DATABASE_NAME}
# Apache
APACHE_DISABLE_REWRITE_IP: 1
TRUSTED_PROXIES: ${PROXY}
TRUSTED_DOMAINS: ${TRUSTED_DOMAINS}
# Overwrites
OVERWRITECLIURL: ${OVERWRITECLIURL}
OVERWRITEHOST: ${OVERWRITEHOST}
OVERWRITEPROTOCOL: https
# Redis
REDIS_HOST: ${REDIS_HOST}
REDIS_HOST_PASSWORD: ${REDIS_PASSWORD}
# PHP Setting
PHP_MEMORY_LIMIT: ${PHP_MEMORY_LIMIT}
PHP_UPLOAD_LIMIT: ${PHP_UPLOAD_LIMIT}
volumes:
- "/opt/nextcloud/data:/var/www/html/data"
- "/opt/nextcloud/config:/var/www/html/config"
- "/opt/nextcloud/apps:/var/www/html/custom_apps"
- type: tmpfs
target: /tmp
networks:
- nextcloud
- traefik
networks:
nextcloud:
traefik:
external: true
The output of your config.php file in /path/to/nextcloud
(make sure you 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,
),
),
'trusted_proxies' =>
array (
0 => '172.19.0.0/16',
),
'instanceid' => '...',
'passwordsalt' => '...',
'secret' => '...',
'trusted_domains' =>
array (
0 => '...',
),
'datadirectory' => '/var/www/html/data',
'dbtype' => 'mysql',
'version' => '27.0.2.1',
'dbname' => 'nextcloud',
'dbhost' => 'nextcloud-database:3306',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'nextcloud',
'dbpassword' => '...',
'installed' => true,
'default_phone_region' => 'DE',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'nextcloud-redis',
'password' => '...',
'port' => 6379,
),
'mail_from_address' => 'no-reply',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => '...',
'mail_smtpauthtype' => 'LOGIN',
'mail_smtphost' => '...',
'mail_smtpport' => '465',
'mail_smtpsecure' => 'ssl',
'mail_smtpauth' => 1,
'mail_smtpname' => 'no-reply@...',
'mail_smtppassword' => '...',
'twofactor_enforced' => 'true',
'twofactor_enforced_groups' =>
array (
),
'twofactor_enforced_excluded_groups' =>
array (
),
'maintenance' => false,
'loglevel' => 2,
'theme' => '',
);
Output errors in nextcloud.log in /var/www/ or as admin user in top right menu, filtering for errors. Use a pastebin service if necessary.
Error Logs