git clone的时候报error: RPC failed; result=18错误
因业务需求,需要把内网gitlab仓库的地址对外网访问,在gitlab前端配置了一个nginx代理服务器,来实现需求,可以在git clone的时候报error: RPC failed错误
[root@Server_yd]# git clone http://username:password@gitlab.linzhongfengniao.com/ElectronicAPI.git Initialized empty Git repository in /tmp/ElectronicVisaAPI/.git/ remote: Counting objects: 9332, done. remote: Compressing objects: 100% (4898/4898), done. error: RPC failed; result=18, HTTP code = 200 Receiving objects: 1% (94/9332), 12.00 KiB | 10 KiB/s ^C
经查询大致的意思就是内容过大,需要配置http.postBuffer,在服务器端配置后,依然无效,使用没有经过nginx代理端的地址测试正常。
git config --global http.postBuffer 524288000
由此判断问题出现在了nginx代理服务器,下载大文件超时。
nginx代理前端用户请求下载文件, nginx代理会先从后端nginx拿到文件并缓存到本地,然后响应给客户端,其中与proxy buffer相关的配置项如下:
proxy_buffer_size 512k; proxy_buffers 4 512k; proxy_busy_buffers_size 512k; proxy_temp_file_write_size 512k;
由此可知, buffer缓冲区最大可以缓冲2.5M的数据,然后就开始刷写磁盘,如果磁盘无法写入,数据丢失。这也是为什么前端下载部分数据,即下载不动的原因。
1)将代理服务器缓存设置更大,可以直接缓存整个文件,跟上面的解决一样
2)禁用代理服务器缓存:
proxy_redirect default;proxy_buffering off;
3)设置更长的超时时间
proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时) proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
代理配置如下:
server {listen 80;server_name gitlab.linzhongfengniao.com;access_log /var/log/nginx/gitlab.linzhongfengniao.log main;set $web_url $host;if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot"){return 404;}location / {proxy_pass http://192.168.3.100;include /etc/nginx/conf.d/deny.conf;proxy_redirect default;proxy_buffering off;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;set $domain default;} }
转载于:https://www.cnblogs.com/cyleon/p/9982394.html
git clone的时候报error: RPC failed; result=18错误相关推荐
- 对于在git上面拉代码报“error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054“解决方法
对于在git上面拉代码报"error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054"解 ...
- gitlab报错 fatal: index-pack failed error: RPC failed; result=18, HTTP code = 200解决方案
gitlab报错 "fatal: index-pack failed error: RPC failed; result=18, HTTP code = 200",如下图 这个问题 ...
- gitlab报错 fatal index-pack failed error RPC failed result
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! gitl ...
- git clone 报错:error: RPC failed; curl 18 transfer closed with outstanding read
欢迎移步我的个人博客 git clone 时候报错如下 error: RPC failed; curl 18 transfer closed with outstanding read data re ...
- git pull 报错:git - error: RPC failed; curl 18 transfer closed with outstanding read data remaining 解决
在git pull公司项目的时候,发现报错了.报错信息如下所示: 报错信息: fatal: The remote end hung up unexpectedly error: RPC failed; ...
- git pull 报错:git - error: RPC failed curl 18 transfer closed with outstanding read data remaining 解决
文章目录 1.美图 2.背景 4.配置缓冲区大小 5.查看配置 1.美图 2.背景 在git pull公司项目的时候,发现报错了.报错信息如下所示: 报错信息: fatal: The remote e ...
- github clone报错error: RPC failed; result=56, HTTP code = 200
报错信息为: error: RPC failed; result=56, HTTP code = 200 fatal: The remote end hung up unexpectedly fata ...
- git clone 出错 RPC failed;result = 18,http code = 200
在使用git时 命令 git clone报错: rpc failed;result = 18,http code = 200 复制代码 是缓存区内存不足 造成的 于是 修改 缓存配置 git conf ...
- git push throws error: RPC failed; result=22, HTTP
为什么80%的码农都做不了架构师?>>> 原因:默认 Git 设置 http post 的缓存为 1MB,将其设置为 500MB 解决办法如下: git config http ...
最新文章
- 开机f8修复电脑步骤_电脑无法启动,屏幕显示白色小横条,怎么办?可收藏以备不时之需...
- 关于多边形内点数问题的一些变形
- C#学习基本概念之匿名方法及Lambda表达式
- JQuery ajax()实例
- 网络工程师需要哪些知识_成长工程师可以教给我们哪些工程知识
- can't request region for resource [mem 0xfed40080-0xfed40fff]问题的解决办法
- java定时器异常,定时任务异常 高手进
- mysql将职称列改为工种_MySQL-其他
- 如何优化及安全设置Linux系统
- java微信支付,企业微信号转账给个人
- Uphone开发心得
- 回声消除(AEC)初体验之matlab仿真
- Jmeter与搜狗输入法、百度输入法不兼容问题解决方法
- C++二分查找相关函数用法总结
- atcod D - Staircase Sequences
- easypoi 语法_请问英语如何学习语法?
- 主板aspm关闭_bios关闭acpi的方法步骤图文详解
- SWUST OJ 67: 学生成绩管理
- Android实现画板功能(一)
- 什么是checkpoint (转)