PHP - 无法上传大于25MB的文件

时间:2015-01-19 10:30:59

标签: php jquery iis file-upload

我在我自己的IIS服务器上摆弄BlueImp's jQuery File Upload脚本。我们的想法是创建一个海量文件上传系统,这样人们就可以上传和存储最大的文件(每个文件最多500MB就是我想要的)。

脚本目前配置如下:

$options = array(
    'image_versions' => array(),
    'acceptFileTypes' => '/(\.|\/)(gif|jpe?g|png|avi|mp4|mpg|mkv|mov|wmv|flv)$/i',
    'maxFileSize' => 500 * 1014 * 1024
);  

哪个应该允许最多的每个多媒体文件扩展。每个文件500MB。但是,经过测试,一旦文件大小超过10MB,它就会失败。大于那的文件不会被存储。

经过一番搜索,我将我的php.ini设置更新为一些非常高的值:

post_max_size = 500M
upload_max_filesize = 500M
max_file_uploads = 100
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1024M

这部分固定的东西。我现在可以上传更大的文件。但是,它仍然会在大于25MB的文件中窒息。不要以为它是执行时间,因为在我的本地网络上上传100MB或更多只需要几秒钟。运行phpinfo()确认php.ini中的所有值都被正确解释(并且不会被主值覆盖)。

有没有人知道可能导致大文件上传失败的原因?

1 个答案:

答案 0 :(得分:1)

考虑到不仅PHP设置了文件上传的限制,而且IIS也设置了限制。 根据{{​​3}},您可以增强网站上传大小限制,将以下内容添加到与您网站相关的web.config文件中:

<system.webServer>
    <security>
        <requestFiltering>
            <requestLimits maxAllowedContentLength="524288000"/>
        </requestFiltering>
    </security>
</system.webServer>

据说这可以在IIS7上运行