Nextcloud in browser errors with spaces on filenames

I can’t quite believe this is a bug and not something to do with my setup because I assume someone would have found and fixed it by now.

My Nextcloud instance is hosted from a domain similar to:
https://example.com/cloud/

Whenever I try to create a folder with spaces in the name (including “New Folder”) Nextcloud tells me that it couldn’t create the folder. I also can’t rename any existing files with spaces. The existing files were added on the commandline.

This is a complete fresh install replacing my owncloud, but that shouldn’t make a difference since the only thing I ported from one to the other was the user files. I was careful to strip out any caches etc.

The error I get is:

{"Message":"Requested uri 
(\/cloud\/remote.php\/webdav\/New%20folder) is out of base uri 
(\/remote.php\/webdav\/)","Exception":"LogicException","Code":0,"Trace":"#0
 
\/srv\/apache\/www.example.com\/content\/cloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(1225):
 Sabre\\HTTP\\Request->getPath()\n#1 
\/srv\/apache\/www.example.com\/content\/cloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(454):
 Sabre\\DAV\\Server->checkPreconditions(Object(Sabre\\HTTP\\Request),
 Object(Sabre\\HTTP\\Response))\n#2 
\/srv\/apache\/www.example.com\/content\/cloud\/3rdparty\/sabre\/dav\/lib\/DAV\/Server.php(248):
 Sabre\\DAV\\Server->invokeMethod(Object(Sabre\\HTTP\\Request), 
Object(Sabre\\HTTP\\Response))\n#3 
\/srv\/apache\/www.example.com\/content\/cloud\/apps\/dav\/appinfo\/v1\/webdav.php(60):
 Sabre\\DAV\\Server->exec()\n#4 
\/srv\/apache\/www.example.com\/content\/cloud\/remote.php(165): 
require_once('\/srv\/apache\/www...')\n#5 
{main}","File":"\/srv\/apache\/www.example.com\/content\/cloud\/3rdparty\/sabre\/http\/lib\/Request.php","Line":214,"User":"philip"}

I saw this error running php5. For other reasons I’ve just upgraded to 7.0.8-0ubuntu0.16.04.3 however the error is unchanged.

I have installed:

php-common                            1:35ubuntu6           
php-curl                              1:7.0+35ubuntu6       
php-fpm                               1:7.0+35ubuntu6       
php-gd                                1:7.0+35ubuntu6       
php-mbstring                          1:7.0+35ubuntu6       
php-mysql                             1:7.0+35ubuntu6       
php-zip                               1:7.0+35ubuntu6       
php5-common                           5.6.17+dfsg-3ubuntu1  
php5-curl                             5.6.17+dfsg-3ubuntu1  
php5-gd                               5.6.17+dfsg-3ubuntu1  
php5-mysql                            5.6.17+dfsg-3ubuntu1  
php7.0-cli                            7.0.8-0ubuntu0.16.04.3
php7.0-common                         7.0.8-0ubuntu0.16.04.3
php7.0-curl                           7.0.8-0ubuntu0.16.04.3
php7.0-fpm                            7.0.8-0ubuntu0.16.04.3
php7.0-gd                             7.0.8-0ubuntu0.16.04.3
php7.0-json                           7.0.8-0ubuntu0.16.04.3
php7.0-mbstring                       7.0.8-0ubuntu0.16.04.3
php7.0-mysql                          7.0.8-0ubuntu0.16.04.3
php7.0-opcache                        7.0.8-0ubuntu0.16.04.3
php7.0-readline                       7.0.8-0ubuntu0.16.04.3
php7.0-xml                            7.0.8-0ubuntu0.16.04.3
php7.0-zip                            7.0.8-0ubuntu0.16.04.3

Just want to say that I’m seeing the exact same issue with 10.0.1.

If I roll back to 10.0.0 everything works as expected but any spaces in the names of either folders or files and I get errors with 10.0.1.

I’m running on PHP 7.0.12 from http://rpms.famillecollet.com/ on CentOS 7

If something breaks after an update, please report this directly on the bugtracker: https://github.com/nextcloud/server/issues

Okay I’ve raised this as an issue here:

1 Like