-
-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Description
Edit by @MorrisJobke: For steps see #2860 (comment)
--
Steps to reproduce
- Attempt to upload a file named .htaccess via WebDAV
- Will return a quota error since it cant parse files correctly in the Sabre CheckQuota plugin
- Circumvent CheckQuota plugin to return true always results now in " Could not rename part file to final file"
Expected behaviour
dot files should be treated the exact same since it's a virtual filesystem not served directly by apache.
Actual behaviour
Various Erorrs
Server configuration
Operating system:
CentOS 7.3.1611 (x64)
Web server:
Server version: Apache/2.4.23 (cPanel)
Server built: Dec 13 2016 13:28:05
Server's Module Magic Number: 20120211:61
Server loaded: APR 1.5.2, APR-UTIL 1.5.2
Compiled using: APR 1.5.2, APR-UTIL 1.5.2
Architecture: 64-bit
Server MPM: prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses disabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT="/etc/apache2"
-D SUEXEC_BIN="/usr/sbin/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Database:
mysqld Ver 10.1.20-MariaDB for Linux on x86_64 (MariaDB Server)
PHP version:
ea-php-cli Copyright 2016 cPanel, Inc.
PHP 7.0.14 (cli) (built: Dec 13 2016 13:45:15) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v6.0.4, Copyright (c) 2002-2016, by ionCube Ltd.
Nextcloud version: (see Nextcloud admin page)
Updated from an older Nextcloud/ownCloud or fresh install:
Updated from 10.x to 11.0.0 Beta to fix ANOTHER issue with dot files.
Where did you install Nextcloud from:
tar file downloaded from nextcloud site
Signing status:
Signing status
Integrity checker has been disabled. Integrity cannot be verified.
List of activated apps:
App list
Unable to run. Script won't run from command line due to cPanel's implementation of PHP
The content of config/config.php:
Config report
$CONFIG = array (
'instanceid' => '[REDACTED]',
'passwordsalt' => '[REDACTED]',
'secret' => '[REDACTED]',
'trusted_domains' =>
array (
0 => '[REDACTED]',
),
'datadirectory' => '[REDACTED]/data',
'overwrite.cli.url' => '[REDACTED]',
'dbtype' => 'mysql',
'version' => '11.0.0.10',
'dbname' => '[REDACTED]',
'dbhost' => 'localhost',
'dbport' => '',
'dbtableprefix' => 'oc_',
'dbuser' => '[REDACTED]',
'dbpassword' => '[REDACTED]',
'logtimezone' => 'UTC',
'installed' => true,
'mail_smtpmode' => 'smtp',
'mail_smtpsecure' => 'tls',
'mail_smtphost' => '[REDACTED]',
'mail_smtpport' => '25',
'mail_from_address' => 'nextcloud',
'mail_domain' => '[REDACTED]',
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '[REDACTED]',
'port' => 0,
),
'maintenance' => false,
'theme' => '',
'loglevel' => 2,
'updater.release.channel' => 'beta',
'updater.secret' => '[REDACTED]',
);
Are you using external storage, if yes which one: No
Are you using encryption: No
Are you using an external user-backend, if yes which one: No
Client configuration
Browser: WebDav client
Operating system: Synology
Logs
Web server error log
Web server error log
``` [REDACTED] - - [26/Dec/2016:11:25:07 -0600] "PUT /remote.php/dav/files/[REDACTED]/htdocs/vendor/plugins/jqueryupload/server/php/files/.htaccess HTTP/1.1" 500 223 "-" "-" ```Nextcloud log (data/nextcloud.log)
Nextcloud log
``` {"reqId":"WGFSpBwXDUaOa8OAMaKeLQAAAAU","remoteAddr":"[REDACTED]","app":"webdav","message":"renaming part file to final file failed","level":3,"time":"2016-12-26T17:25:57+00:00","method":"PUT","url":"\/remote.php\/dav\/files\/[REDACTED]\/htdocs\/vendor\/plugins\/jqueryupload\/server\/php\/files\/.htaccess","user":"james","version":"11.0.0.10"} {"reqId":"WGFSpBwXDUaOa8OAMaKeLQAAAAU","remoteAddr":"[REDACTED]","app":"webdav","message":"Exception: {\"Message\":\"HTTP\\\/1.1 500 Could not rename part file to final file\",\"Exception\":\"Sabre\\\\DAV\\\\Exception\",\"Code\":0,\"Trace\":\"#0 \\\[REDACTED]\\\/public_html\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/Directory.php(137): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\File->put(Resource id #405)\\n#1 \\\[REDACTED]\\\/public_html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(1072): OCA\\\\DAV\\\\Connector\\\\Sabre\\\\Directory->createFile('.htaccess', Resource id #405)\\n#2 \\\[REDACTED]\\/public_html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(525): Sabre\\\\DAV\\\\Server->createFile('files\\\/james\\\/Doc...', Resource id #405, NULL)\\n#3 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpPut(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#4 \\\[REDACTED]\\\/public_html\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#5 \\\[REDACTED]\\\/public_html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:PUT', Array)\\n#6 \\\[REDACTED]\\\/public_html\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#7 \\\[REDACTED]\\/public_html\\\/apps\\\/dav\\\/lib\\\/Server.php(227): Sabre\\\\DAV\\\\Server->exec()\\n#8 \\\[REDACTED]\\\/public_html\\\/apps\\\/dav\\\/appinfo\\\/v2\\\/remote.php(30): OCA\\\\DAV\\\\Server->exec()\\n#9 \\\[REDACTED]\\\/public_html\\\/remote.php(165): require_once('\\\/[REDACTED]...')\\n#10 {main}\",\"File\":\"\\\[REDACTED]\\\/public_html\\\/apps\\\/dav\\\/lib\\\/Connector\\\/Sabre\\\/File.php\",\"Line\":187,\"User\":\"[REDACTED]\"}","level":4,"time":"2016-12-26T17:25:57+00:00","method":"PUT","url":"\/remote.php\/dav\/files\[REDACTED]/htdocs\/vendor\/plugins\/jqueryupload\/server\/php\/files\/.htaccess","user":"[REDACTED]","version":"11.0.0.10"}</details>