全球主机交流论坛

标题: 国内鸡连不上github的解决方法(并不完美) [打印本页]

作者: 嗷嗷    时间: 2020-5-1 15:35
标题: 国内鸡连不上github的解决方法(并不完美)
本帖最后由 嗷嗷 于 2020-5-1 15:37 编辑

说其中一个案例,用国内鸡鸡用一键脚本的时候,连接github可能会超时


比如这个逗比的haproxy脚本

  1. wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/haproxy.sh && chmod +x haproxy.sh && bash haproxy.sh
复制代码


返回了【失败:拒绝连接】

  1. [root@coal ~]# wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/haproxy.sh && chmod +x haproxy.sh && bash haproxy.sh
  2. --2020-05-01 14:38:37--  https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/haproxy.sh
  3. 正在解析主机 raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.228.133
  4. 正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|151.101.228.133|:443... 失败:拒绝连接。
复制代码



众所周知,jsdelivr可以给github加速

引用jsdelivr官方的说明
// load any GitHub release, commit, or branch
// note: we recommend using npm for projects that support it
https://cdn.jsdelivr.net/gh/user/repo@version/file

// load jQuery v3.2.1
https://cdn.jsdelivr.net/gh/jquery/[email protected]/dist/jquery.min.js

// use a version range instead of a specific version
https://cdn.jsdelivr.net/gh/jquery/[email protected]/dist/jquery.min.js
https://cdn.jsdelivr.net/gh/jquery/jquery@3/dist/jquery.min.js

// omit the version completely to get the latest one
// you should NOT use this in production
https://cdn.jsdelivr.net/gh/jquery/jquery/dist/jquery.min.js

// add ".min" to any JS/CSS file to get a minified version
// if one doesn't exist, we'll generate it for you
https://cdn.jsdelivr.net/gh/jquery/[email protected]/src/core.min.js

// add / at the end to get a directory listing
https://cdn.jsdelivr.net/gh/jquery/jquery/


所以

github链接是【https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/haproxy.sh】

jsdelivr链接是【https://cdn.jsdelivr.net/gh/ToyoDAdoubi/doubi@master/haproxy.sh】
又或者是这样【https://cdn.jsdelivr.net/gh/ToyoDAdoubi/doubi/haproxy.sh】

对比一下,域名变成了cdn.jsdelivr.net,后面接gh,是github的缩写。还有就是分支master也要变一下

所以脚本就从
  1. wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/haproxy.sh && chmod +x haproxy.sh && bash haproxy.sh
复制代码

变成了
  1. wget -N --no-check-certificate https://cdn.jsdelivr.net/gh/ToyoDAdoubi/doubi@master/haproxy.sh && chmod +x haproxy.sh && bash haproxy.sh
复制代码


成功连接上了
  1. [root@coal ~]# wget -N --no-check-certificate https://cdn.jsdelivr.net/gh/ToyoDAdoubi/doubi@master/haproxy.sh && chmod +x haproxy.sh && bash haproxy.sh
  2. --2020-05-01 14:46:17--  https://cdn.jsdelivr.net/gh/ToyoDAdoubi/doubi@master/haproxy.sh
  3. 正在解析主机 cdn.jsdelivr.net (cdn.jsdelivr.net)... 119.188.13.98, 112.240.60.77
  4. 正在连接 cdn.jsdelivr.net (cdn.jsdelivr.net)|119.188.13.98|:443... 已连接。
  5. 已发出 HTTP 请求,正在等待回应... 200 OK
复制代码


不过这样只能让你连接上【haproxy.sh】这个脚本文件,但是如果脚本内引用了github的文件,还是有可能连接不上


此时假设【haproxy.sh】内有引用【raw.githubusercontent.com】的文件

我们可以用sed命令批量替换链接

  1. sed -i 's/查找的字符串/替换的字符串/g' 文件
复制代码


配合正则语法应该就是
  1. 算了我不会
复制代码


正则个锤子,弄了半个小时死活弄不好,直接写死,行就行,不行就算了,如果分支不是master就不行了

  1. sed -i 's/raw.githubusercontent.com/cdn.jsdelivr.net\/gh/g' haproxy.sh
  2. sed -i 's/\/master\//@master\//g' haproxy.sh
复制代码




作者: 1016797313    时间: 2020-5-1 15:38
支持一下楼主
作者: Lebron    时间: 2020-5-1 15:40
改个dns最方便
作者: yuzo555    时间: 2020-5-1 15:42
提示: 作者被禁止或删除 内容自动屏蔽
作者: 高玩梁    时间: 2020-5-1 15:43
jsdelivr也是各位mjj的最爱,反正能白女要的mjj都爱
作者: Lucky    时间: 2020-5-1 15:52
vim /etc/hosts  换hosts,就嗯换
作者: ju0594    时间: 2020-5-1 16:26
好用 感谢楼主 这样就不用自己反代了 不知道有没有一键转换工具 没有的话开发一个应该很有市场
作者: Function    时间: 2020-5-1 17:10
支持技术贴,给楼主顶了
作者: wanyiqiu6    时间: 2020-5-1 17:11
hosts解决比较省事,
151.101.108.133  raw.githubusercontent.com
192.30.253.112 github.com
作者: kez    时间: 2020-5-1 17:44
yuzo555 发表于 2020-5-1 15:42
全局代理解决一切

鸡怎么全局代理
作者: 嗷嗷    时间: 2020-5-1 18:06
本帖最后由 嗷嗷 于 2020-5-1 18:07 编辑
wanyiqiu6 发表于 2020-5-1 17:11
hosts解决比较省事,
151.101.108.133  raw.githubusercontent.com
192.30.253.112 github.com


你看看帖子,就是133这个IP连接失败的
——
看错了,C段不一样
作者: wanyiqiu6    时间: 2020-5-1 18:27
嗷嗷 发表于 2020-5-1 18:06
你看看帖子,就是133这个IP连接失败的
——
看错了,C段不一样

嗯嗯,不过你这个方法和我用的host都解决不了release的问题
作者: lin1866    时间: 2020-5-1 19:35
我们这儿移动秒开,不知道是不是做了缓存
作者: huang7dede    时间: 2020-5-1 20:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: 雪丫鬟    时间: 2020-5-1 20:04
不用国内的鸡就行了
作者: honus    时间: 2020-5-1 20:05
yuzo555 发表于 2020-5-1 15:42
全局代理解决一切

服务器上怎么全局代理?




欢迎光临 全球主机交流论坛 (https://lilynana.eu.org/) Powered by Discuz! X3.4