According to the documentation at Helicon Tech:
postBuffer – maximum size of a memory buffer used to temporarely store request post data. Useful to protect against slow post DDOS attacks. default = 1024 (kilobytes). Use postBuffer="0" to disable buffering post requests.
If I set POST_BUFFER="0"
however, I cannot upload anything at all. If I set it to anything over 30MB, I get an error that it cannot exceed 30000000 bytes.
I know that Django should be fully capable of handling my uploads and splitting them into chunks and rebuilding them, so frankly I don't need Helicon to step in here, but I cannot seem to find any truly functional way to disable this setting. If I remove it altogether from my environment variables, the system defaults to postBuffer="1024
and I can't upload anything over 1MB. For my purpose I would like to be able to allow users the ability to upload anything upwards of 500MB.
Has anyone else come across postBuffer
before and knows how to get around this annoying requirement? Surely I'm not the only person who uses Helicon Zoo and is trying to make a file upload site, however I cannot find anything here, on Helicon's forum, or Googling in general.
This issue ended up getting addressed on a previous question I posted regarding a matter that stemmed from the same problem. The full discussion can be viewed here.
The answer was contributed in a comment to the original question by Helicon Zoo developer rukeba.
To resolve this issue, install the Twisted engine via the WPI installer and open Helicon Zoo manager and navigate to your site/project. Click Edit
with your wsgi project selected. In the edit window, select the button for the engine, in my case it was python.2.7.wsgi
. In the next window, select python.2.7.twisted
. Click Select
to return to the edit window. Add a new Environment Variable here called WSGI_APP and give it a value of project.wsgi.application. Click Apply
twice to save the changes. I then reset my app in IIS and tested the site. I was able to upload a file that was greater than 60mb in size, proving to me that this resolved the issue.
I'm technically still unsure why POST_BUFFER cannot be set to 0 in order to disable it, but in any case, this certainly got the job done!