nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
26.94k stars 4.02k forks source link

[Bug]: Content-Length HTTP header is missing when using Azure blob storage #36723

Closed artonge closed 1 year ago

artonge commented 1 year ago

⚠️ This issue respects the following points: ⚠️

Bug description

When using Azure blob storage, I am prompted with an error 'Content-Length HTTP header is missing' when I try to upload a file.

Steps to reproduce

  1. Setup Nextcloud with Azure blob storage as primary storage
  2. Log in with any user
  3. Try to upload a file
  4. See warning popup with error information 'Content-Length HTTP header is missing'

Expected behavior

Uploading files with Azure blob storage should work.

Installation method

None

Operating system

RHEL/CentOS

PHP engine version

PHP 8.0

Web server

Nginx

Database engine version

PostgreSQL

Is this bug present after an update or on a fresh install?

Fresh Nextcloud Server install

Are you using the Nextcloud Server Encryption module?

None

What user-backends are you using?

Configuration report

No response

List of activated Apps

Enabled:
  - activity: 2.18.0
  - cloud_federation_api: 1.9.0
  - comments: 1.16.0
  - contactsinteraction: 1.7.0
  - dashboard: 7.6.0
  - dav: 1.25.0
  - federatedfilesharing: 1.16.0
  - federation: 1.16.0
  - files: 1.21.1
  - files_pdfviewer: 2.7.0
  - files_rightclick: 1.5.0
  - files_sharing: 1.18.0
  - files_trashbin: 1.16.0
  - files_versions: 1.19.1
  - firstrunwizard: 2.15.0
  - hmr_enabler: 1.0.0
  - logreader: 2.11.0
  - lookup_server_connector: 1.14.0
  - nextcloud_announcements: 1.15.0
  - notifications: 2.14.0
  - oauth2: 1.14.0
  - photos: 2.2.0
  - privacy: 1.10.0
  - profiler: 1.2.0
  - provisioning_api: 1.16.0
  - recommendations: 1.5.0
  - serverinfo: 1.16.0
  - settings: 1.8.0
  - sharebymail: 1.16.0
  - support: 1.9.0
  - survey_client: 1.14.0
  - systemtags: 1.16.0
  - text: 3.7.0
  - theming: 2.1.1
  - twofactor_backupcodes: 1.15.0
  - updatenotification: 1.16.0
  - user_status: 1.6.0
  - viewer: 1.10.0
  - weather_status: 1.6.0
  - workflowengine: 2.8.0
Disabled:
  - admin_audit: 1.16.0
  - encryption: 2.14.0
  - files_external: 1.18.0
  - files_videoplayer: 1.15.0
  - testing: 1.16.0
  - user_ldap: 1.16.0

Nextcloud Signing status

No response

Nextcloud Logs

{"reqId":"pUHmlLIuhSRKQKKpqDFQ","level":3,"time":"2023-02-15T10:36:23+00:00","remoteAddr":"127.0.0.1","user":"admin","app":"objectstore","method":"PUT","url":"/remote.php/webdav/IMG_20220723_175849645.jpg","message":"Could not create object urn:oid:64 for files/IMG_20220723_175849645.jpg","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/109.0","version":"26.0.0.5","exception":{"Exception":"MicrosoftAzure\\Storage\\Common\\Exceptions\\ServiceException","Message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","Code":411,"Trace":[{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":427,"function":"throwIfError","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":405,"function":"onRejected","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":204,"function":"MicrosoftAzure\\Storage\\Common\\Internal\\{closure}","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":169,"function":"callHandler","class":"GuzzleHttp\\Promise\\Promise","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/RejectedPromise.php","line":42,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/TaskQueue.php","line":48,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\RejectedPromise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":159,"function":"run","class":"GuzzleHttp\\Promise\\TaskQueue","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":184,"function":"tick","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":248,"function":"execute","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":224,"function":"invokeWaitFn","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":269,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":226,"function":"invokeWaitList","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":62,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-blob/src/Blob/BlobRestProxy.php","line":1810,"function":"wait","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/Azure.php","line":108,"function":"createBlockBlob","class":"MicrosoftAzure\\Storage\\Blob\\BlobRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/ObjectStoreStorage.php","line":507,"function":"writeObject","class":"OC\\Files\\ObjectStore\\Azure","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\ObjectStore\\ObjectStoreStorage","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/File.php","line":248,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/Directory.php","line":151,"function":"put","class":"OCA\\DAV\\Connector\\Sabre\\File","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":1098,"function":"createFile","class":"OCA\\DAV\\Connector\\Sabre\\Directory","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":504,"function":"createFile","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPut","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php","line":85,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/remote.php","line":171,"args":["/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","Line":509,"message":"Could not create object urn:oid:64 for files/IMG_20220723_175849645.jpg","CustomMessage":"Could not create object urn:oid:64 for files/IMG_20220723_175849645.jpg"}}
{"reqId":"pUHmlLIuhSRKQKKpqDFQ","level":3,"time":"2023-02-15T10:36:23+00:00","remoteAddr":"127.0.0.1","user":"admin","app":"no app in context","method":"PUT","url":"/remote.php/webdav/IMG_20220723_175849645.jpg","message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/109.0","version":"26.0.0.5","exception":{"Exception":"MicrosoftAzure\\Storage\\Common\\Exceptions\\ServiceException","Message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","Code":411,"Trace":[{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":427,"function":"throwIfError","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":405,"function":"onRejected","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":204,"function":"MicrosoftAzure\\Storage\\Common\\Internal\\{closure}","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":169,"function":"callHandler","class":"GuzzleHttp\\Promise\\Promise","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/RejectedPromise.php","line":42,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/TaskQueue.php","line":48,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\RejectedPromise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":159,"function":"run","class":"GuzzleHttp\\Promise\\TaskQueue","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":184,"function":"tick","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":248,"function":"execute","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":224,"function":"invokeWaitFn","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":269,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":226,"function":"invokeWaitList","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":62,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-blob/src/Blob/BlobRestProxy.php","line":1810,"function":"wait","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/Azure.php","line":108,"function":"createBlockBlob","class":"MicrosoftAzure\\Storage\\Blob\\BlobRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/ObjectStoreStorage.php","line":507,"function":"writeObject","class":"OC\\Files\\ObjectStore\\Azure","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\ObjectStore\\ObjectStoreStorage","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/File.php","line":248,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/Directory.php","line":151,"function":"put","class":"OCA\\DAV\\Connector\\Sabre\\File","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":1098,"function":"createFile","class":"OCA\\DAV\\Connector\\Sabre\\Directory","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":504,"function":"createFile","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPut","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php","line":85,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/remote.php","line":171,"args":["/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","Line":509,"message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","exception":{},"CustomMessage":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>."}}
{"reqId":"pUHmlLIuhSRKQKKpqDFQ","level":3,"time":"2023-02-15T10:36:23+00:00","remoteAddr":"127.0.0.1","user":"admin","app":"webdav","method":"PUT","url":"/remote.php/webdav/IMG_20220723_175849645.jpg","message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/109.0","version":"26.0.0.5","exception":{"Exception":"Sabre\\DAV\\Exception","Message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","Code":0,"Trace":[{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/File.php","line":318,"function":"convertToSabreException","class":"OCA\\DAV\\Connector\\Sabre\\File","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/Directory.php","line":151,"function":"put","class":"OCA\\DAV\\Connector\\Sabre\\File","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":1098,"function":"createFile","class":"OCA\\DAV\\Connector\\Sabre\\Directory","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":504,"function":"createFile","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPut","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php","line":85,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/remote.php","line":171,"args":["/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/File.php","Line":753,"Previous":{"Exception":"MicrosoftAzure\\Storage\\Common\\Exceptions\\ServiceException","Message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","Code":411,"Trace":[{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":427,"function":"throwIfError","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","line":405,"function":"onRejected","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":204,"function":"MicrosoftAzure\\Storage\\Common\\Internal\\{closure}","class":"MicrosoftAzure\\Storage\\Common\\Internal\\ServiceRestProxy","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":169,"function":"callHandler","class":"GuzzleHttp\\Promise\\Promise","type":"::"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/RejectedPromise.php","line":42,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/TaskQueue.php","line":48,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\RejectedPromise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":159,"function":"run","class":"GuzzleHttp\\Promise\\TaskQueue","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php","line":184,"function":"tick","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":248,"function":"execute","class":"GuzzleHttp\\Handler\\CurlMultiHandler","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":224,"function":"invokeWaitFn","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":269,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":226,"function":"invokeWaitList","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/guzzlehttp/promises/src/Promise.php","line":62,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-blob/src/Blob/BlobRestProxy.php","line":1810,"function":"wait","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/Azure.php","line":108,"function":"createBlockBlob","class":"MicrosoftAzure\\Storage\\Blob\\BlobRestProxy","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/ObjectStore/ObjectStoreStorage.php","line":507,"function":"writeObject","class":"OC\\Files\\ObjectStore\\Azure","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\ObjectStore\\ObjectStoreStorage","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/lib/private/Files/Storage/Wrapper/Wrapper.php","line":644,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/File.php","line":248,"function":"writeStream","class":"OC\\Files\\Storage\\Wrapper\\Wrapper","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/lib/Connector/Sabre/Directory.php","line":151,"function":"put","class":"OCA\\DAV\\Connector\\Sabre\\File","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":1098,"function":"createFile","class":"OCA\\DAV\\Connector\\Sabre\\Directory","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":504,"function":"createFile","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPut","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":253,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/sabre/dav/lib/DAV/Server.php","line":321,"function":"start","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php","line":85,"function":"exec","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/home/louis/workspace/nextcloud/instances/server2/remote.php","line":171,"args":["/home/louis/workspace/nextcloud/instances/server2/apps/dav/appinfo/v1/webdav.php"],"function":"require_once"}],"File":"/home/louis/workspace/nextcloud/instances/server2/3rdparty/microsoft/azure-storage-common/src/Common/Internal/ServiceRestProxy.php","Line":509},"message":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>.","exception":{},"CustomMessage":"Fail:\nCode: 411\nValue: Content-Length HTTP header is missing.\ndetails (if any): \ufeff<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>MissingContentLengthHeader</Code><Message>Content-Length HTTP header is missing.\nRequestId:b5f3f6d1-b01e-002f-7229-41e9a9000000\nTime:2023-02-15T10:36:23.6114207Z</Message><HeaderName>Content-Length</HeaderName></Error>."}}

Additional info

No response

szaimen commented 1 year ago

Which nc version?

artonge commented 1 year ago

25 and 26

solracsf commented 1 year ago

Duplicate of https://github.com/nextcloud/server/issues/14391