WEB 上传文件还有哪些地方限制了文件大小?

2017-07-08 18:18:02 +08:00
 MrMike

文件上传的插件用的是 dropzone.js ,服务器的处理语音是 php,服务器环境是 centos 7 + apache2 + php 5.6,php 框架用的是 symfony。 在上传大文件时,经过测试 250M 的 zip 文件是可以上传的,280M 的文件就上传失败,在 request 里面,files 为空。 php.ini 里面的 upload_max_filesize 和 post_max_size 都设置成了 2048M. 在 Dropzone.js 里面的 maxFilesize 也设置成了 4048M。 apache 里面,max_execution_time 和 max_input_time 都设置成了 3600.

请教下,还有哪些地方限制了 web 端文件上传的大小?

3530 次点击
所在节点    JavaScript
32 条回复
xuminke
2017-07-10 15:13:36 +08:00
最近也在弄大文件上传,碰到的问题不是文件大小被限制了,而是连接时间过久(因为大文件上传花时间),但是并不会有 timeout 的 error 出来。显先是 java 后端,然后是 nodejs 后端。
开始认为只要有数据传输,应该不存在超时。但是还是超时了。具体是请求没有结束直接 failed 了。服务端没有任何错误 log。java 层不知道如何设置。改用 nodejs 后: http.createServer(app).setTimeout(1300000),就不会自动断开连接了。
希望能给到帮助。
AJian
2017-07-10 16:04:45 +08:00
有用 nginx 的话 client_max_body_size
MrMike
2017-07-10 16:08:28 +08:00
@xuminke 谢谢。我之前一直用 ajax 的方式来上传,将时间修改成了 3600000,还是不行。。刚才直接用表单提交,服务器端居然可以获取到上传的文件数据。我再查一下,是不是 ajax 还有哪些设置没有找到。
MrMike
2017-07-10 16:20:56 +08:00
@AJian 是 apache,服务器上的设置修改了的。刚才直接用表单提交,不使用 ajax 方式,文件可以在服务器端获取到。
AJian
2017-07-10 16:33:49 +08:00
可以把请求代理到 Fiddler4 或者 Charles 抓取请求包分析对比下。
googlebot
2017-07-10 18:48:41 +08:00
Apache 的 htaccess,
MrMike
2017-07-10 20:16:35 +08:00
@googlebot 能设置的都设置了的。纯表单提交,服务器可以获取提交的数据。用 ajax 就不行。
Showfom
2017-07-10 21:12:16 +08:00
楼主有没有尝试运维的终极大法?

reboot
MrMike
2017-07-11 00:00:47 +08:00
@Showfom 哈哈,reboot 几次了,就差 reinstall 了。。
googlebot
2017-07-11 09:18:04 +08:00
@MrMike 贴个 htaccess
<Ifmodule mod_php5.c>
php_value upload_max_filesize 2M
php_value max_execution_time 30
php_value max_input_time 60
php_value memory_limit 32M
php_value post_max_size 8M
php_flag register_globals off
php_flag display_errors off
php_flag file_uploads on
php_flag log_errors off
php_flag output_buffering off
php_flag register_argc_argv on
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
php_flag magic_quotes_sybase off
php_flag mysql.allow_persistent off
php_flag register_long_arrays on
php_flag allow_url_fopen on
php_flag cgi.force_redirect on
php_flag enable_dl on
</Ifmodule>
MrMike
2017-07-11 09:18:55 +08:00
哎,,,思维定时了。一直在 firefox 下调试,换 google chrome 上就可以工作了。谢谢各位朋友的不吝赐教。结贴。
MrMike
2017-07-11 09:19:46 +08:00
我用的 firefox 版本是 54.0.1 (64-bit) mac,希望此贴对以后遇到类似问题的朋友有所帮助。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/373960

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX