Nextcloud version: 27.1.5.1 (dockerized version)
Operating system and version: Ubuntu 22.04.3 LTS
Apache or nginx version: Using lighttpd 1.4.64 as a reverse proxy
PHP version: 8.2.11 (cli)
I am unable to connect to my self hosted instance of Nextcloud getting 503 Service Unavailable (standard https connection on port 443, which is used by all the clients) after upgrade to 27.1.5.1, upgrade itself seems to have gone alright. I am able to connect to the AIO on port 8080 using the ip address and it says “Your containers are up-to-date.” All containers are running.
I am using reverse proxy and it was working properly before the upgrade and nothing changed on that front, so it should not be the cause. I’ve tested with simple server client application that the port translation from 443 to custom port (I am not using the default proposed by documentation when using reverse proxy) works.
Errors from nextcloud-aio-nextcloud container:
Activating Collabora config...
Failed to activate any config changes
Server error: `GET https://nextcloud.customdomain.cz/hosting/discovery` resulted in a `503 Service Unavailable` response:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"htt (truncated...)
#0 /var/www/html/3rdparty/guzzlehttp/guzzle/src/Middleware.php(69): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response), NULL, Array, NULL)
#1 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(204): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Response))
#2 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(153): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\Psr7\Response), NULL)
#3 /var/www/html/3rdparty/guzzlehttp/promises/src/TaskQueue.php(48): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}()
#4 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(248): GuzzleHttp\Promise\TaskQueue->run(true)
#5 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(224): GuzzleHttp\Promise\Promise->invokeWaitFn()
#6 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(269): GuzzleHttp\Promise\Promise->waitIfPending()
#7 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(226): GuzzleHttp\Promise\Promise->invokeWaitList()
#8 /var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php(62): GuzzleHttp\Promise\Promise->waitIfPending()
#9 /var/www/html/3rdparty/guzzlehttp/guzzle/src/Client.php(187): GuzzleHttp\Promise\Promise->wait()
#10 /var/www/html/lib/private/Http/Client/Client.php(230): GuzzleHttp\Client->request('get', 'https://nextclo...', Array)
#11 /var/www/html/custom_apps/richdocuments/lib/WOPI/DiscoveryManager.php(89): OC\Http\Client\Client->get('https://nextclo...', Array)
#12 /var/www/html/custom_apps/richdocuments/lib/WOPI/DiscoveryManager.php(61): OCA\Richdocuments\WOPI\DiscoveryManager->fetchFromRemote()
#13 /var/www/html/custom_apps/richdocuments/lib/WOPI/Parser.php(41): OCA\Richdocuments\WOPI\DiscoveryManager->get()
#14 /var/www/html/custom_apps/richdocuments/lib/Command/ActivateConfig.php(67): OCA\Richdocuments\WOPI\Parser->getUrlSrc('Capabilities')
#15 /var/www/html/3rdparty/symfony/console/Command/Command.php(298): OCA\Richdocuments\Command\ActivateConfig->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 /var/www/html/3rdparty/symfony/console/Application.php(1040): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#17 /var/www/html/3rdparty/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand(Object(OCA\Richdocuments\Command\ActivateConfig), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#18 /var/www/html/3rdparty/symfony/console/Application.php(171): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#19 /var/www/html/lib/private/Console/Application.php(211): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#20 /var/www/html/console.php(100): OC\Console\Application->run()
#21 /var/www/html/occ(11): require_once('/var/www/html/c...')
#22 {main}
Error from nextcloud-aio-mastercontainer container:
Deleting duplicate sessions
NOTICE: PHP message: 404 Not Found
Type: Slim\Exception\HttpNotFoundException
Code: 404
Message: Not found.
File: /var/www/docker-aio/php/vendor/slim/slim/Slim/Middleware/RoutingMiddleware.php
Line: 76
Trace: #0 /var/www/docker-aio/php/vendor/slim/slim/Slim/Routing/RouteRunner.php(56): Slim\Middleware\RoutingMiddleware->performRouting(Object(GuzzleHttp\Psr7\ServerRequest))
#1 /var/www/docker-aio/php/vendor/slim/csrf/src/Guard.php(476): Slim\Routing\RouteRunner->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#2 /var/www/docker-aio/php/vendor/slim/slim/Slim/MiddlewareDispatcher.php(168): Slim\Csrf\Guard->process(Object(GuzzleHttp\Psr7\ServerRequest), Object(Slim\Routing\RouteRunner))
#3 /var/www/docker-aio/php/vendor/slim/twig-view/src/TwigMiddleware.php(115): Psr\Http\Server\RequestHandlerInterface@anonymous->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#4 /var/www/docker-aio/php/vendor/slim/slim/Slim/MiddlewareDispatcher.php(121): Slim\Views\TwigMiddleware->process(Object(GuzzleHttp\Psr7\ServerRequest), Object(Psr\Http\Server\RequestHandlerInterface@anonymous))
#5 /var/www/docker-aio/php/src/Middleware/AuthMiddleware.php(38): Psr\Http\Server\RequestHandlerInterface@anonymous->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#6 /var/www/docker-aio/php/vendor/slim/slim/Slim/MiddlewareDispatcher.php(269): AIO\Middleware\AuthMiddleware->__invoke(Object(GuzzleHttp\Psr7\ServerRequest), Object(Psr\Http\Server\RequestHandlerInterface@anonymous))
#7 /var/www/docker-aio/php/vendor/slim/slim/Slim/Middleware/ErrorMiddleware.php(76): Psr\Http\Server\RequestHandlerInterface@anonymous->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#8 /var/www/docker-aio/php/vendor/slim/slim/Slim/MiddlewareDispatcher.php(121): Slim\Middleware\ErrorMiddleware->process(Object(GuzzleHttp\Psr7\ServerRequest), Object(Psr\Http\Server\RequestHandlerInterface@anonymous))
#9 /var/www/docker-aio/php/vendor/slim/slim/Slim/MiddlewareDispatcher.php(65): Psr\Http\Server\RequestHandlerInterface@anonymous->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#10 /var/www/docker-aio/php/vendor/slim/slim/Slim/App.php(199): Slim\MiddlewareDispatcher->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#11 /var/www/docker-aio/php/vendor/slim/slim/Slim/App.php(183): Slim\App->handle(Object(GuzzleHttp\Psr7\ServerRequest))
#12 /var/www/docker-aio/php/public/index.php(185): Slim\App->run()
#13 {main}
Tips: To display error details in HTTP response set "displayErrorDetails" to true in the ErrorHandler constructor.
The output of your Nextcloud log in Admin > Logging:
Not sure where to access this, if it’s from the UI on port 443 then it’s not reachable.
The output of your config.php file in /path/to/nextcloud
(make sure you remove any identifiable information!):
<?php
$CONFIG = array (
'one-click-instance' => true,
'one-click-instance.user-limit' => 100,
'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,
),
),
'appsallowlist' =>
array (
),
'check_data_directory_permissions' => false,
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'nextcloud-aio-redis',
'password' => '****',
'port' => 6379,
),
'overwritehost' => 'nextcloud.customdomain.cz',
'overwriteprotocol' => 'https',
'passwordsalt' => '****',
'secret' => '****',
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'nextcloud.customdomain.cz',
),
'datadirectory' => '/mnt/ncdata',
'dbtype' => 'pgsql',
'version' => '27.1.5.1',
'overwrite.cli.url' => 'https://nextcloud.customdomain.cz/',
'dbname' => 'nextcloud_database',
'dbhost' => 'nextcloud-aio-database',
'dbport' => '',
'dbtableprefix' => 'oc_',
'dbuser' => 'oc_nextcloud',
'dbpassword' => '****',
'installed' => true,
'instanceid' => '****',
'maintenance' => false,
'loglevel' => '2',
'log_type' => 'file',
'logfile' => '/var/www/html/data/nextcloud.log',
'log_rotate_size' => '10485760',
'log.condition' =>
array (
'apps' =>
array (
0 => 'admin_audit',
),
),
'preview_max_x' => '2048',
'preview_max_y' => '2048',
'jpeg_quality' => '60',
'enabledPreviewProviders' =>
array (
1 => 'OC\\Preview\\Image',
2 => 'OC\\Preview\\MarkDown',
3 => 'OC\\Preview\\MP3',
4 => 'OC\\Preview\\TXT',
5 => 'OC\\Preview\\OpenDocument',
6 => 'OC\\Preview\\Movie',
7 => 'OC\\Preview\\Krita',
0 => 'OC\\Preview\\Imaginary',
),
'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',
'allow_local_remote_servers' => true,
'davstorage.request_timeout' => 3600,
'htaccess.RewriteBase' => '/',
'dbpersistent' => false,
'files_external_allow_create_new_local' => false,
'trusted_proxies' =>
array (
0 => '127.0.0.1',
1 => '::1',
),
'preview_imaginary_url' => 'http://nextcloud-aio-imaginary:9000',
'mail_sendmailmode' => 'smtp',
'mail_from_address' => 'info',
'mail_domain' => 'customdomain.cz',
'mail_smtphost' => 'smtp.customdomain.cz',
'mail_smtpport' => '587',
'mail_smtpauth' => 1,
'mail_smtpname' => '****',
'mail_smtppassword' => '****',
"mail_smtpstreamoptions" => array(
'ssl' => array(
'allow_self_signed' => true,
'verify_peer' => false,
'verify_peer_name' => false
)
),
);
The output of lighttpd log serving as reverse proxy:
lighttpd[1]: (gw_backend.c.285) establishing connection failed: socket: tcp:custom_ip:custom_port: Connection refused
lighttpd[1]: (gw_backend.c.995) all handlers for /? on are down.
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:48 +0000] "GET / HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:49 +0000] "GET /index.php/apps/files/preview-service-worker.js HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:49 +0000] "GET / HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:50 +0000] "GET /index.php/apps/files/preview-service-worker.js HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: (gw_backend.c.362) gw-server re-enabled: tcp:custom_ip:custom_port custom_ip custom_port
lighttpd[1]: (gw_backend.c.285) establishing connection failed: socket: tcp:custom_ip:custom_port: Connection refused
lighttpd[1]: (gw_backend.c.995) all handlers for /? on are down.
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:51 +0000] "GET / HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:52 +0000] "GET /index.php/apps/files/preview-service-worker.js HTTP/2.0" 503 361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0"
lighttpd[1]: (gw_backend.c.362) gw-server re-enabled: tcp:custom_ip:custom_port custom_ip custom_port
lighttpd[1]: (gw_backend.c.285) establishing connection failed: socket: tcp:custom_ip:custom_port: Connection refused
lighttpd[1]: (gw_backend.c.995) all handlers for /apps/richdocuments/settings/fonts.json? on are down.
lighttpd[1]: 172.20.0.1 nextcloud.customdomain.cz - [13/Jan/2024:20:15:56 +0000] "GET /apps/richdocuments/settings/fonts.json HTTP/1.1" 503 361 "-" "COOLWSD HTTP Agent 23.05.6.4"
lighttpd[1]: 192.168.53.220 nextcloud.customdomain.cz - [13/Jan/2024:20:15:58 +0000] "PRI * HTTP/2.0" 100 2548 "-" "-"
lighttpd[1]: (gw_backend.c.362) gw-server re-enabled: tcp:custom_ip:custom_port custom_ip custom_port
Any help is will be appreciated, glad to answer any questions.