根据Helicon Tech的文件:
postBuffer - 用于临时存储请求发布数据的内存缓冲区的最大大小。有助于防止DDOS后的慢速攻击。默认值= 1024(千字节)。使用postBuffer =“0”来禁用缓冲后请求。
但是,如果我设置POST_BUFFER="0"
,我根本无法上传任何内容。如果我将它设置为超过30MB的任何东西,我会收到一个错误,它不能超过30000000字节。
我知道Django应该完全能够处理我的上传并将它们拆分成块并重建它们,所以坦率地说我不需要Helicon来这里,但我似乎无法找到任何真正有效的方法来禁用它设置。如果我从环境变量中完全删除它,系统默认为postBuffer="1024
,我无法上传超过1MB的任何内容。出于我的目的,我希望能够允许用户上传任何超过500MB的内容。
之前是否有其他人遇到postBuffer
并且知道如何解决这个恼人的要求?当然,我不是唯一一个使用Helicon动物园的人,并且正在尝试创建一个文件上传网站,但是我在Helicon的论坛或谷歌搜索中找不到任何东西。
答案 0 :(得分:1)
这个问题最终得到了我之前提出的关于同一问题产生的问题的解决。可以查看完整的讨论here。
答案是由Helicon Zoo开发人员rukeba对原始问题的评论做出的贡献。
要解决此问题,请通过WPI安装程序安装Twisted引擎并打开Helicon Zoo管理器并导航到您的站点/项目。选中wsgi项目后单击Edit
。在编辑窗口中,选择引擎按钮,在我的情况下是python.2.7.wsgi
。在下一个窗口中,选择python.2.7.twisted
。单击Select
返回编辑窗口。在这里添加一个名为WSGI_APP的新环境变量,并为其赋值project.wsgi.application。单击Apply
两次以保存更改。我然后在IIS中重置我的应用程序并测试该网站。我能够上传一个大小超过60mb的文件,向我证明这解决了这个问题。
我在技术上仍然不确定为什么POST_BUFFER无法设置为0以禁用它,但无论如何,这肯定完成了工作!