Nginx 上传图片时返回 500 错误
🏷️ Nginx
最终运维发现不是下面说的配置问题,而是那台 Nginx 服务器的磁盘有问题,导致所有的文件都不能写。
小图片过小时不会创建临时文件所以没问题;当超过 buffer 的大小时,创建临时文件失败,所以返回了 500 错误。
上传文件大小相关的有三个配置
client_body_buffer_size
配置请求体缓存区大小, 不配的话,client_body_temp_path
设置临时文件存放路径。只有当上传的请求体超出缓存区大小时,才会写到临时文件中client_max_body_size
设置上传文件的最大值
- 文件大小超过了
client_body_buffer_size
client_body_temp_path
的临时文件路径居然没有写权限以上两个原因导致了返回 500 错误。
如果上传文件大小超过
client_max_body_size
时,会报 413 entity too large 的错误。