【Nginx】gitlab push代码时发生了http 413错误

错误本身没有错,错在你让他发生了。

背景:


error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large

错误解释:

413 Request Entity Too Large(请求实体太大)
作用:客户端发送的实体主体部分比服务器能够或者希望处理的要大。  一般情况下我们看不到这个状态码。 因为浏览器不会发送太大的数据给网站,但是机器人可能会。

问题分析:

1.整个服务结构是通过nginx来进行反向代理gitlab的服务,当我们通过git push的时候,请求时先走到nginx,然后在到达gitlab。所以这种413的问题最先发生在nginx上,然后在gitlab服务上。
2.对于nginx,报错原因是nginx不允许上传配置过大的文件,那么件把nginx的上传大小配置调高就好。

解决:

如果nginx 出现413 Request Entity Too Large问题的解决方法:

查看并修改nginx.conf中http模块里的配置:client_max_body_size  

(开始大小是 10m,现在修改成20m了,nginx默认上传文件的大小是1M)

1.打开nginx配置文件 nginx.conf, 路径一般是:/etc/nginx/nginx.conf。
2.在http{}段中加入 client_max_body_size 20m; 20m为允许最大上传的大小。

3.保存后nginx -t检查配置文件是否有问题,然后nginx -s reload。
4.再次尝试git push。
如果出现这个问题,是因为你的账户在gitlab中对应项目中没有操作权限,修改一下就行了

修改完gitlab中用户对应的操作权限后,继续重试,成功了。


猜你喜欢

转载自blog.csdn.net/u013948858/article/details/80283849