This is my first post, so I’ll do my best to explain the issue clearly.
I'm trying to upload a large video file (3.5GB) as a "File" content type in Volto, but I keep encountering an issue. The site itself does not display any errors, but the browser console shows the following message:
Uncaught (in promise) Error: Error reading videotaller.mp4: null
PromiseFileReader.js:8
I found some guidance in the Discord community and applied the following changes to increase the upload limit:
Zope Configuration Updates
I modified zope.ini and zope.conf as follows:
zope.ini (to increase max request body size)
[server:main]
max_request_body_size = 5368709120 # 5GB in bytes
I also checked and attempted to modify maxFileUploadSize in Volto’s index.js, but since its default setting does not enforce a limit, this didn’t resolve the issue.
Current Behavior
I can upload smaller files without issues.
I don’t know exactly when the error occurs (file size threshold).
Has anyone encountered a similar issue? Is there another setting or configuration I might be missing?
Any help would be greatly appreciated! Thanks in advance.
I dont think it is a good idea to add such big files to Plone or any other CMS (so I dont think anyone else 'does that'.
Probably, you want to add and stream it from somewhere else and just link to it it from Plone.
We use TUS via volto. This is a PR to achieve that based on the one we use
TUS uploads in chunks so you need to ensure the chunk size is less than the max configured by waitress etc. TUS is really the only sensible way to achieve large uploads because even if you set all your proxy limits to some large amount you will find that some small network connection failure will abort the whole upload and the users will get fustrated.
TUS does require some changes to how you deploy. it either needs a temp folder that all your servers have access to, like EFS or NFS. or it needs a way to ensure the same user always sends to the same instance (session affinity)