External Storage: HTTP/1.1 503 Storage is temporarily not available

Hi,

I have problems with the external storage, since I moved from ownCloud to Nextcloud. With ownCloud I had no error.

I use an external WebDav data store at magentacloud.de
In addition, I want to encrypt the memory with the integrated encryption app.

But both with and without encryption I can no longer access the folder to which the external memory is configured.

Error message:

Fatal	webdav	Sabre\DAV\Exception\ServiceUnavailable: HTTP/1.1 503 Storage is temporarily not available    

/var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 939: OCA\DAV\Connector\Sabre\ObjectTree->getNodeForPath('Extern/cloud')
/var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 336: Sabre\DAV\Server->getPropertiesForPath('Extern/cloud', Array, 1)
[internal function] Sabre\DAV\CorePlugin->httpPropFind(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
/var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 479: Sabre\Event\EventEmitter->emit('method PROPFIND', Array)
/var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 254: Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/customers/webs/Stefan/viper666.selfhost.bz/apps/dav/appinfo/v1/webdav.php - line 60: Sabre\DAV\Server->exec()
/var/customers/webs/Stefan/viper666.selfhost.bz/remote.php - line 165: require_once('/var/customers/...')
{main}

If I in the settings of the external memory the option https: // remove, I can browse the folder but nothing to save.
Both with and without encryption.

Error message:

Fatal	webdav	Sabre\DAV\Exception: HTTP/1.1 500 Client error response [url] https://webdav.magentacloud.de/Test/test.txt.ocTransferId278692379.part [status code] 404 [reason phrase] Not Found    

    /var/customers/webs/Stefan/viper666.selfhost.bz/apps/dav/lib/Connector/Sabre/File.php - line 158: OCA\DAV\Connector\Sabre\File->convertToSabreException(Object(GuzzleHttp\Exception\ClientException))
    /var/customers/webs/Stefan/viper666.selfhost.bz/apps/dav/lib/Connector/Sabre/Directory.php - line 137: OCA\DAV\Connector\Sabre\File->put(Resource id #35)
    /var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 1072: OCA\DAV\Connector\Sabre\Directory->createFile('test.txt', Resource id #35)
    /var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 525: Sabre\DAV\Server->createFile('Extern/cloud/Te...', Resource id #35, NULL)
    [internal function] Sabre\DAV\CorePlugin->httpPut(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
    /var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
    /var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 479: Sabre\Event\EventEmitter->emit('method PUT', Array)
    /var/customers/webs/Stefan/viper666.selfhost.bz/3rdparty/sabre/dav/lib/DAV/Server.php - line 254: Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
    /var/customers/webs/Stefan/viper666.selfhost.bz/apps/dav/appinfo/v1/webdav.php - line 60: Sabre\DAV\Server->exec()
    /var/customers/webs/Stefan/viper666.selfhost.bz/remote.php - line 165: require_once('/var/customers/...')
    {main}    

What am I doing wrong?


Nextcloud version: 11.0.1
Operating system and version : Ubuntu 16.04 LTS
Apache or nginx version: Apache 2.4.18
PHP version: 7.0.13
Is this the first time you’ve seen this error and can you replicate it?: yes

The output of your config.php file in /path/to/nextcloud:

$CONFIG = array (
‘instanceid’ => ‘’,
‘passwordsalt’ => '
***’,
‘secret’ => '’,
‘trusted_domains’ =>
array (
0 => ‘viper666.selfhost.bz’,
),
‘datadirectory’ => ‘/var/customers/webs/Stefan/viper666.selfhost.bz/data’,
‘overwrite.cli.url’ => ‘https://viper666.selfhost.bz’,
‘dbtype’ => ‘mysql’,
‘version’ => ‘11.0.1.2’,
‘dbname’ => ‘nextcloud’,
‘dbhost’ => ‘localhost’,
‘dbport’ => ‘’,
‘dbtableprefix’ => ‘oc_’,
‘dbuser’ => 'oc_
’,
‘dbpassword’ => '
’,
‘logtimezone’ => ‘UTC’,
‘loglevel’ => ‘0’,
‘installed’ => true,
‘memcache.local’ => ‘\OC\Memcache\APCu’,
‘filelocking.enabled’ => ‘true’,
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘redis’ =>
array (
‘host’ => ‘localhost’,
‘port’ => 6379,
),

Can you still access to this webdav storage from your computer? Not that they are doing some maintenance of their servers at mangentacloud.

Yes I can. Access works both from the vendor’s web page, via any other WebDav client, and from an existing Owncloud installation. Only via Nextcloud not.

Can you also connect from your server (e.g. via cadaver webdav client). This error 500 looks for me like NC can’t establish a connection. Normally I would suspect some firewall or stuff but the fact that you were running owncloud, makes me wonder. The responsible developer for the external storage is rarely on the forum, so if you haven’t more clues, you should probably report this to the bugtracker at https://github.com/nextcloud/server/issues

Can you also connect from your server (e.g. via cadaver webdav client).

Yes, its work from my server. I have this client installed and tested it.

I think it is not ab bug.
Because it also works on other customer servers, right? It should then everyone have this problem if it were a bug.

I have looked at the README of 3rdparty/sabre/dav. It says:

 | Branch Status | Minimum PHP version |
 | ------------ | ------ | ------------------- |
 | Master | [! [BuildStatus] (https://travis-ci.org/fruux/sabre-dav.svg?branch=master)] (https://travis-ci.org/fruux/sabre-dav) | PHP 5.5 |

Can it be that it does not work with php7?

I also checked the network traffic with tcpdump.
If the option at https:// in the settings is not enabled i get many requests to webdav server.
If the option at https:// in the settings is enabled here is no network request to the webdav server at all.

That’s hard to say. There are so many options and situations that can lead to problems that it does not have to happen for each user (perhaps the connection was interrupted and caused this situation), sharing, permissions, client stuff, …

If this external storage worked with owncloud, now it doesn’t work with nextcloud and you don’t have a errors in your integrity check, then please file a bug report. Even if it turn out that it isn’t a bug, the developers can give more detailed instructions to debug this problem.

Thank you for your help.
I have now created a bug report.