![Nginx 上传大图像时出现 502 错误](https://linux22.com/image/704052/Nginx%20%E4%B8%8A%E4%BC%A0%E5%A4%A7%E5%9B%BE%E5%83%8F%E6%97%B6%E5%87%BA%E7%8E%B0%20502%20%E9%94%99%E8%AF%AF.png)
环境:
- 在 256MB VPS 上全新安装 Ubuntu 16.04
- LEMP 堆栈与 PHP 7.1
- 最新的 WordPress 仅安装 Avada 主题和相关插件。
- 不上传时至少有 75MB 的可用 RAM
错误:
- 上传大型图像(约 8MB 和 24MP)时出现 502 错误。服务器可以正常接收文件,但在处理缩略图时返回错误。
- 我使用这个服务器来探索可能的自托管图片解决方案,因此我也临时安装了Lychee,上传图片时也出现了同样的情况。
Nginx 日志:
recv() failed (104: Connection reset by peer) while reading response header from upstream,
PHP7.1-FPM 日志:
[pool www] child 451 exited on signal 9 (SIGKILL)
Nginx配置:https://pastebin.com/MtWdeeGz
Nginx 站点配置:https://pastebin.com/YqWg9Euy
PHP.ini-pastebin.com/cJpgchQj
我尝试过但无济于事:
- 使用套接字代替 TCP
- 在 nginx.conf 和站点配置中实现了 fast_cgi 参数
- wpconfig.php 中增加了 WordPress 内存限制
- PHP.ini 中增加了 PHP 内存限制
- 执行时间增加
感谢您提供的任何帮助和见解!
答案1
问题信息不足,但我认为您的 php-fpm 进程在缩略图处理过程中被 OOM-killer 杀死。您可以通过命令检查dmesg | grep kill
。有两种方法可以解决此问题,增加 RAM 或添加交换,请参阅说明那里。