ubuntu support
parent
18f37af56d
commit
14ab76e65c
|
@ -38,24 +38,19 @@ module.exports = {
|
||||||
'github.com': {
|
'github.com': {
|
||||||
'/.*/.*/releases/download/': {
|
'/.*/.*/releases/download/': {
|
||||||
redirect: 'download.fastgit.org',
|
redirect: 'download.fastgit.org',
|
||||||
desc: 'release文件加速下载跳转地址',
|
desc: 'release文件加速下载跳转地址'
|
||||||
sni: 'baidu.com'
|
|
||||||
},
|
},
|
||||||
'/.*/.*/archive/': {
|
'/.*/.*/archive/': {
|
||||||
redirect: 'download.fastgit.org',
|
redirect: 'download.fastgit.org'
|
||||||
sni: 'baidu.com'
|
|
||||||
},
|
},
|
||||||
|
|
||||||
'/.*/.*/blame/': {
|
'/.*/.*/blame/': {
|
||||||
redirect: 'hub.fastgit.org',
|
redirect: 'hub.fastgit.org'
|
||||||
sni: 'baidu.com'
|
|
||||||
},
|
},
|
||||||
'^/[^/]+/[^/]+(/releases(/.*)?)?$': {
|
'^/[^/]+/[^/]+(/releases(/.*)?)?$': {
|
||||||
script: [
|
script: [
|
||||||
'github'
|
'github'
|
||||||
],
|
],
|
||||||
desc: 'clone加速复制链接脚本',
|
desc: 'clone加速复制链接脚本'
|
||||||
sni: 'baidu.com'
|
|
||||||
},
|
},
|
||||||
'/.*': {
|
'/.*': {
|
||||||
proxy: 'github.com',
|
proxy: 'github.com',
|
||||||
|
@ -63,6 +58,30 @@ module.exports = {
|
||||||
desc: '目前禁掉sni就可以直接访问,如果后续github.com的ip被封锁,只能再走proxy模式',
|
desc: '目前禁掉sni就可以直接访问,如果后续github.com的ip被封锁,只能再走proxy模式',
|
||||||
sni: 'baidu.com'
|
sni: 'baidu.com'
|
||||||
}
|
}
|
||||||
|
// '/.*/.*/raw11/': {
|
||||||
|
// replace: '(.+)\\/raw\\/(.+)',
|
||||||
|
// proxy: 'raw.fastgit.org$1/$2',
|
||||||
|
// sni: 'baidu.com'
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
'github-releases.githubusercontent.com': {
|
||||||
|
'.*': {
|
||||||
|
proxy: 'github-releases.githubusercontent.com',
|
||||||
|
sni: 'baidu.com'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'raw.githubusercontent.com': {
|
||||||
|
proxy: 'raw.githubusercontent.com',
|
||||||
|
sni: 'baidu.com'
|
||||||
|
},
|
||||||
|
'github.githubassets.com': {
|
||||||
|
'.*': {
|
||||||
|
proxy: 'github.githubassets.com',
|
||||||
|
sni: 'baidu.com'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'customer-stories-feed.github.com': {
|
||||||
|
'.*': { proxy: 'customer-stories-feed.fastgit.org' }
|
||||||
},
|
},
|
||||||
'api.github.com': {
|
'api.github.com': {
|
||||||
'^/_private/browser/stats$': {
|
'^/_private/browser/stats$': {
|
||||||
|
@ -70,23 +89,6 @@ module.exports = {
|
||||||
desc: 'github的访问速度分析上传,没有必要,直接返回成功'
|
desc: 'github的访问速度分析上传,没有必要,直接返回成功'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
'/.*/.*/raw11/': {
|
|
||||||
replace: '(.+)\\/raw\\/(.+)',
|
|
||||||
proxy: 'raw.fastgit.org$1/$2'
|
|
||||||
},
|
|
||||||
'raw.11githubusercontent.com': {
|
|
||||||
'.*': { proxy: 'raw.fastgit.org' }
|
|
||||||
},
|
|
||||||
// 'github.githubassets.com': {
|
|
||||||
// '.*': {
|
|
||||||
// proxy: 'assets-gh.docmirror.top/_proxy',
|
|
||||||
// test: 'https://github.githubassets.com/favicons/favicon.svg',
|
|
||||||
// desc: '静态资源加速'
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
'customer-stories-feed.github.com': {
|
|
||||||
'.*': { proxy: 'customer-stories-feed.fastgit.org' }
|
|
||||||
},
|
|
||||||
// google cdn
|
// google cdn
|
||||||
'www.google.com': {
|
'www.google.com': {
|
||||||
'/recaptcha/.*': { proxy: 'www.recaptcha.net' }
|
'/recaptcha/.*': { proxy: 'www.recaptcha.net' }
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
autoStart: {
|
autoStart: {
|
||||||
enabled: true,
|
enabled: true,
|
||||||
},
|
},
|
||||||
mode: 'safe',
|
mode: 'default',
|
||||||
},
|
},
|
||||||
plugin: {
|
plugin: {
|
||||||
node: {
|
node: {
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
module.exports = {
|
||||||
|
requestIntercept (context, interceptOpt) {
|
||||||
|
const { rOptions } = context
|
||||||
|
if (interceptOpt.sni != null) {
|
||||||
|
rOptions.servername = interceptOpt.sni
|
||||||
|
console.log('sni replace', rOptions.hostname, rOptions.servername)
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
is (interceptOpt) {
|
||||||
|
return !!interceptOpt.sni
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,6 +3,7 @@ const redirect = require('./impl/redirect')
|
||||||
const abort = require('./impl/abort')
|
const abort = require('./impl/abort')
|
||||||
const success = require('./impl/success')
|
const success = require('./impl/success')
|
||||||
const script = require('./impl/script')
|
const script = require('./impl/script')
|
||||||
const modules = [proxy, redirect, abort, script, success]
|
const sni = require('./impl/sni')
|
||||||
|
const modules = [proxy, redirect, abort, script, success, sni]
|
||||||
|
|
||||||
module.exports = modules
|
module.exports = modules
|
||||||
|
|
|
@ -54,7 +54,7 @@ module.exports = function createRequestHandler (createIntercepts, middlewares, e
|
||||||
if (!reqIncpt.requestIntercept) {
|
if (!reqIncpt.requestIntercept) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
const goNext = reqIncpt.requestIntercept(context, req, res, ssl, next)
|
const goNext = reqIncpt.requestIntercept(context, req, res, ssl)
|
||||||
if (goNext) {
|
if (goNext) {
|
||||||
next()
|
next()
|
||||||
return
|
return
|
||||||
|
|
Loading…
Reference in New Issue