【问题标题】:How can i disable apache multipart/form-data handling?如何禁用 apache 多部分/表单数据处理?
【发布时间】:2016-06-19 19:18:02
【问题描述】:

我有以下 php 代码

<form method="post" enctype="multipart/form-data">
<input type="file" name="fil">
<input type="submit">
</form>
<?php

foreach(getallheaders() as $name){
if(preg_match("~multipart/form-data~",$name)){
     die("trying to upload something?");
}
}
?>

问题是 php 处理文件后由 apache 处理。
我想要的是在使用 apache 处理之前控制多部分/表单数据。

【问题讨论】:

    标签: php apache multipartform-data


    【解决方案1】:

    将 PHP 的 enable_post_data_reading 指令设置为 Off,然后使用 php://input 读取原始 POST 数据。

    请注意 php://input 不适用于 enctype="multipart/form-data" 除非 enable_post_data_readingOff(文档没有提到最后一点)。

    【讨论】:

    • 那么在使用 apache 处理之前,如何使用 php 处理 multipart/formdata?
    • Apache 不处理它,PHP 处理。通过我描述的方式,您可以自己处理原始 POST 数据。如果这就是你所追求的,你不能在数据到达 PHP 之前执行任何逻辑..
    猜你喜欢
    • 2012-11-17
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 2010-11-03
    • 1970-01-01
    • 2015-06-05
    • 2021-04-06
    • 2011-07-30
    相关资源
    最近更新 更多