大文件上传失败的php

Posted

技术标签:

【中文标题】大文件上传失败的php【英文标题】:Large file uploads failing php 【发布时间】:2012-04-12 20:30:50 【问题描述】:

我创建了一个小网站,我的朋友可以在其中上传他们想要的歌曲和一些小文件,但我的问题是超过 5mb 的文件会失败,因为在浏览器中显示“连接重置”错误。

我的服务器设置的最大文件大小为 2Mb,但我可以上传 2.5-3Mb 的罚款 可能是因为我用 .htaccess 覆盖了它

但是,但是文件上传超过 5Mb,它们根本不会上传,正如我之前所说的浏览器无法访问服务器。

这会是服务器问题吗?还是我的代码有问题?我是否需要进行更改才能进行大型上传? .htaccess 文件中的最大帖子大小和最大文件大小也设置为 40mb

这是网站 http://sharebay.webatu.com/

您可以尝试上传一些超过 7mb 的文件,mp3/flac/aac/m4a/wav/

【问题讨论】:

【参考方案1】:

更改文件上传大小

您可以将其更改为 .htaccess 文件。

.htaccess 文件存储在与 .php 文件相同的目录中。他们修改该文件夹和所有子文件夹的配置。您只需在您选择的目录中创建一个 .htaccess 文件即可使用它们(或修改它,如果存在的话)。

以下内容可以让您增加上传限制(如果服务器提供商允许通过 .htaccess 更改 PHP 配置)。

php_value upload_max_filesize 70M
php_value post_max_size 80M
php_value memory_limit 90M
php_value max_execution_time 240
php_value max_input_time 240 

你可以根据自己的需要改变尺寸

【讨论】:

【参考方案2】:

上传需要多长时间?

如果你的上传速度很慢,那么它应该需要更多的时间然后max_execution_time 然后 apache 会停止你的 PHP 脚本。

【讨论】:

最大执行时间是几秒?【参考方案3】:

也将这些添加到 .htaccess 中(将 10M 调整为您想要的 MB 大小):

php_value upload_max_filesize 10M
php_value post_max_size 10M

这假设您无权访问 php.ini(否则最好放在那里)并且您的主机不禁止 htaccess 覆盖这些值。

如果您已经尝试过,请发布有关您的环境的更多信息。如果您在共享服务器上,则可能无法更改太多。

【讨论】:

看起来像共享主机,所以除了尝试修改 htaccess 之外,您可能无能为力。或者,如果您完全了解 Linux,请尝试使用 VPS,它们现在真的很便宜,您几乎可以做任何您想做的事情。

以上是关于大文件上传失败的php的主要内容,如果未能解决你的问题,请参考以下文章

Nginx PHP 上传大文件失败(超过 6 GB)

求php怎么实现web端上传超大文件

PHP代码中使用post参数上传大文件

php 上传大文件 插件 都有哪些

谷歌云存储 - 上传大文件 (4GB)

大文件上的 JQuery Ajax 文件上传失败