由于php每天要接收其它服务器post过来的文件

比如我在:192.168.1.147上用下面这条命令

wget http://192.168.1.148/upload.php --post-file=msg.log

这个msg.log 有50M,进行post msg.log这个文件到148服务器的php上存储,进行入库

首先说明:

不要问我怎么不直接复制文件,要用php接收?

我现在讨论的是这个问题,谢谢。

原因:

首次调用出现了:

HTTP request sent, awaiting response... 413 Request Entity Too Large

我按照网上的教程改nginx配置

改为:

client_max_body_size 100m;

满以为解决问题,再次执行报错。

HTTP request sent, awaiting response... 502 Bad Gateway

网上有的说php.ini要配置,但是我的php.ini 配置是64M

max_execution_time 300 300

max_file_uploads 20 20

max_input_nesting_level 64 64

max_input_time 60 60

max_input_vars 1000 1000

memory_limit 128M 128M

open_basedir no value no value

output_buffering 4096 4096

output_handler no value no value

post_max_size 64M 64M

upload_max_filesize 64M 64M

都找了好多,都是说配置php.ini, nginx.conf,还有php-fpm.conf的request_terminate_timeout=0,

最后没用,自己试试就知道了,不多说了,多谢好人!

回复内容:

由于php每天要接收其它服务器post过来的文件

比如我在:192.168.1.147上用下面这条命令

wget http://192.168.1.148/upload.php --post-file=msg.log

这个msg.log 有50M,进行post msg.log这个文件到148服务器的php上存储,进行入库

首先说明:

不要问我怎么不直接复制文件,要用php接收?

我现在讨论的是这个问题,谢谢。

原因:

首次调用出现了:

HTTP request sent, awaiting response... 413 Request Entity Too Large

我按照网上的教程改nginx配置

改为:

client_max_body_size 100m;

满以为解决问题,再次执行报错。

HTTP request sent, awaiting response... 502 Bad Gateway

网上有的说php.ini要配置,但是我的php.ini 配置是64M

max_execution_time 300 300

max_file_uploads 20 20

max_input_nesting_level 64 64

max_input_time 60 60

max_input_vars 1000 1000

memory_limit 128M 128M

open_basedir no value no value

output_buffering 4096 4096

output_handler no value no value

post_max_size 64M 64M

upload_max_filesize 64M 64M

都找了好多,都是说配置php.ini, nginx.conf,还有php-fpm.conf的request_terminate_timeout=0,

最后没用,自己试试就知道了,不多说了,多谢好人!

nginx配置:

keepalive_timeout 600;

proxy_send_timeout 600;

client_max_body_size 200M;

fastcgi_connect_timeout 600;

fastcgi_send_timeout 600;

fastcgi_read_timeout 600;

fastcgi_buffer_size 1024k;

fastcgi_buffers 8 1024k;

fastcgi_busy_buffers_size 1024k;

fastcgi_temp_file_write_size 1024k;

proxy_ignore_client_abort on;

tcp_nopush on;

tcp_nodelay on;

client_header_timeout 600;

client_body_timeout 600;

sendfile on;

send_timeout 600;

php的配置或php-fpm上传大小配置及post大小也需要修改

根据你的实际情况修改上边的配置吧

具体原因不清楚, 不过502错误一般都是PHP那边出了问题

不是没响应,就是响应时间过长,等。

这里已经和nginx没什么关系了

我在Xubuntu 14.04上用测试PHP CLI Server,只配置了下面两条,其他都是默认配置,就能上传90多MB的ZIP包了.

upload_max_filesize=100M

post_max_size=128M

php -S 127.0.0.1:8080 -t /png/www/example.com/public_html/

// chmod 777 /png/www/example.com/public_html/app/yab/static/

// http://127.0.0.1:8080/app/yab/upload.php

';

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {

echo "File is valid, and was successfully uploaded.\n";

} else {

echo "Possible file upload attack!\n";

}

echo 'Here is some more debugging info:';

print_r($_FILES);

print "";

exit();

}

?>

输出:

File is valid, and was successfully uploaded.

Here is some more debugging info:Array

(

[userfile] => Array

(

[name] => firefox.zip

[type] => application/zip

[tmp_name] => /tmp/phpG1PdtU

[error] => 0

[size] => 93938426

)

)

同时本地测试了Nginx + PHP-FPM,Nginx只修改了下面这个配置:

client_max_body_size 128M;

经过我测试,上传文件是可以上传成功的,但是我用wget --post-file 就返回502错误

wget可能有限制大文件上传,

用curl命令搞定:

curl -T "msg.log" "http://192.168.1.148/upload.php"

谢谢大家 结贴!

nginx_module_upload

你把php的执行时间调大一点,另外上传超时也调大一点。

set_time_limit(),max_input_time之类的。你是不是第一次调完后再上传会等一会儿才报502错?

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

php大文件下载502,php+nginx上传大文件502BadGateway相关推荐

  1. php上传文件502,php+nginx 上传大文件 502 Bad Gateway

    由于php每天要接收其它服务器post过来的文件 比如我在:192.168.1.147上用下面这条命令 wget http://192.168.1.148/upload.php --post-file ...

  2. 使用nginx上传大文件报500异常处理

    当项目使用nginx代理时,上传大的文件会报500服务已异常,解决方案: 1.nginx配置文件nginx.conf中配置 client_body_buffer_size 10m; #缓存区大小 cl ...

  3. Nginx 上传大文件超大超时解决办法

    问题:用nginx作代理服务器,上传大文件时(本人上传8M左右的文件),提示上传超时或文件过大. 浏览器调试报413 (Request Entity Too Large)错误,如下图所示 原因是ngi ...

  4. Nginx上传大图片或者大文件失败

    问题出现:使用nginx做反向代理或者请求转发时小的图片或者文件可以上传成功,大的失败,请求被终止 根据官方文档说明,可以在nginx配置文件中http.server.location等配置块添加配置 ...

  5. Nginx 上传大文件配置

    Nginx 配置大文件上传 nginx问题 解决方法 重启nginx nginx问题 遇到的问题: Nginx: 413 – Request Entity Too Large Error and So ...

  6. tornado+nginx上传视频文件

    [http://arloz.me/tornado/2014/06/27/uploadvideotornado.html] [NGINX REFRER: Nginx upload module] 由于t ...

  7. java文件下载controller_Java Spring MVC 上传下载文件配置及controller方法详解

    下载: 1.在spring-mvc中配置(用于100M以下的文件下载) 下载文件代码 @RequestMapping("/file/{name.rp}") public Respo ...

  8. 502 bad gateway php-fm,php+nginx 上传大文件 502 Bad Gateway

    由于php每天要接收其它服务器post过来的文件 比如我在:192.168.1.147上用下面这条命令 wget http://192.168.1.148/upload.php --post-file ...

  9. 【上传】Nginx 上传文件

    本文包含知识点: 1.nginx服务搭建 2.nginx文件上传模块搭建 3.文件重命名服务搭建 3.nginx整体配置 4.测试 引言 一般可以应用在上传不是跟频繁的场景,都可以采用Nginx上传文 ...

最新文章

  1. Unity 3D游戏代码编程学习教程 Full Guide To Unity 3D C#: Learn To Code Making 3D Games
  2. JNDI数据库连接池的配置
  3. ES6学习(五) -- 箭头函数
  4. [Modules]PrestaShop插件 模块 – 产品推荐模块 随机展示推荐产品
  5. MediaCodec在Android视频硬解码组件的应用
  6. 第五期 IP数据包结构和OSI第三层网络层
  7. 数据库的binlog、redolog以及undolog
  8. php经典面试题时间,php 经典面试题及答案
  9. Dubbo使用启动时检查 check=“true“
  10. Bash教程之模式扩展
  11. 判断 json html标签,javascript如何判断是否为json?
  12. mysql与串口通信_串口通信 - ShawnXie - 博客园
  13. 程序设计竞赛(ACM)与认证(CCF)的概念集(百度百科)
  14. Android项目模块化/组件化开发(非原创)
  15. php中x22是什么意思,我想问一下:联想s22e和x22区别哪款好用点??真实反馈一下!!...
  16. 抽象工厂模式(优缺点、使用场景、具体实现)
  17. rpm安装包安装方式
  18. 电脑找不到硬盘的解决方案
  19. 找最大ASCII字符
  20. 【Flutter实战】六大布局组件及半圆菜单案例

热门文章

  1. 佛教中经典语录~滚石无苔,逆增上缘
  2. Android/安卓开发之WIFI的基本应用
  3. springboot实现多线程定时发送邮件
  4. 【python】生成图片对应的md5
  5. 求职面试技巧_获得求职信的最大爆炸的5个技巧
  6. 火狐浏览器下载默认C盘更改
  7. 读书笔记 - 为什么精英都是时间控
  8. Dw 2020最新版下载地址 一键安装Windows
  9. JDBC 基础学习详情笔记
  10. 360剑灵洪门崛起服务器维护,剑灵洪门崛起————【维护】10月17日更新维护公告...