【问题标题】:POST_BUFFER = "0" not working as expectedPOST_BUFFER = "0" 未按预期工作
【发布时间】:2014-05-02 22:41:11
【问题描述】:

根据Helicon Tech的文档:

postBuffer – 用于临时存储请求发布数据的内存缓冲区的最大大小。有助于防止缓慢的后 DDOS 攻击。默认值 = 1024(千字节)。使用 postBuffer="0" 禁用缓冲 post 请求。

但是,如果我设置POST_BUFFER="0",我根本无法上传任何内容。如果我将它设置为超过 30MB,我会收到一个错误,它不能超过 30000000 字节。

我知道 Django 应该完全有能力处理我的上传并将它们分成块并重建它们,所以坦率地说我不需要 Helicon 介入这里,但我似乎找不到任何真正实用的方法来禁用它环境。如果我从我的环境变量中完全删除它,系统默认为postBuffer="1024,我无法上传超过 1MB 的任何内容。出于我的目的,我希望能够允许用户上传超过 500MB 的任何内容。

有没有其他人遇到过postBuffer 并且知道如何解决这个烦人的要求?当然,我不是唯一一个使用 Helicon Zoo 并试图创建文件上传网站的人,但是我在 Helicon 的论坛或一般的谷歌搜索上找不到任何东西。

【问题讨论】:

    标签: django iis helicontech heliconzoo


    【解决方案1】:

    这个问题最终在我之前发布的一个问题中得到解决,该问题是由同一问题引起的。完整讨论可以查看here

    Helicon Zoo 开发人员 rukeba 在对原始问题的评论中提供了答案。

    要解决此问题,请通过 WPI 安装程序安装 Twisted 引擎并打开 Helicon Zoo 管理器并导航到您的站点/项目。单击 Edit 并选择您的 wsgi 项目。在编辑窗口中,选择引擎的按钮,在我的例子中是python.2.7.wsgi。在下一个窗口中,选择python.2.7.twisted。单击Select 返回编辑窗口。在此处添加一个名为 WSGI_APP 的新环境变量,并为其赋值 project.wsgi.application。单击Apply 两次以保存更改。然后我在 IIS 中重置我的应用程序并测试了该站点。我能够上传大小超过 60mb 的文件,向我证明这解决了问题。

    从技术上讲,我仍然不确定为什么不能将 POST_BUFFER 设置为 0 以禁用它,但无论如何,这肯定完成了工作!

    【讨论】:

    • POST_BUFFER=0 存在一个错误,将在 Zoo 模块的下一个版本中修复。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    • 2022-01-24
    • 2015-05-11
    • 2020-05-15
    • 2014-10-31
    • 2018-02-12
    • 2014-01-20
    相关资源
    最近更新 更多