|
|
@@ -31,8 +31,6 @@ const REDIRECT_MIRROR_HEADER = [
|
|
|
['gapis.geekzu.org/g-fonts/', 'https://fonts.gstatic.com/'],
|
|
|
['gapis.geekzu.org/g-themes/', 'https://themes.googleusercontent.com/'],
|
|
|
['sdn.geekzu.org/', 'https://secure.gravatar.com/'],
|
|
|
- // cravatar
|
|
|
- ['cravatar.cn/', 'https://secure.gravatar.com/'],
|
|
|
// libravatar
|
|
|
['seccdn.libravatar.org/gravatarproxy/', 'https://secure.gravatar.com/'],
|
|
|
// ghproxy
|
|
|
@@ -53,16 +51,14 @@ const REDIRECT_MIRROR_HEADER = [
|
|
|
['cdn.gitmirror.com/', 'https://cdn.statically.io/'],
|
|
|
// FastGit
|
|
|
['raw.fastgit.org/', 'https://raw.githubusercontent.com/'],
|
|
|
- ['assets.fastgit.org/', 'https://github.githubassets.com/'],
|
|
|
+ // ['assets.fastgit.org/', 'https://github.githubassets.com/'],
|
|
|
// jsDelivr
|
|
|
['fastly.jsdelivr.net/', 'https://cdn.jsdelivr.net/'],
|
|
|
['gcore.jsdelivr.net/', 'https://cdn.jsdelivr.net/'],
|
|
|
+ ['testingcf.jsdelivr.net/', 'https://cdn.jsdelivr.net/'],
|
|
|
// JSDMirror
|
|
|
['cdn.jsdmirror.com/', 'https://cdn.jsdelivr.net/'],
|
|
|
['cdn.jsdmirror.cn/', 'https://cdn.jsdelivr.net/'],
|
|
|
- // ops.ci
|
|
|
- ['jsdelivr.ops.ci/', 'https://cdn.jsdelivr.net/'],
|
|
|
- ['fonts.ops.ci/', 'https://fonts.googleapis.com/'],
|
|
|
// onmicrosoft.cn
|
|
|
['jsd.onmicrosoft.cn/', 'https://cdn.jsdelivr.net/'],
|
|
|
['npm.onmicrosoft.cn/', 'https://unpkg.com/'],
|
|
|
@@ -79,9 +75,7 @@ const REDIRECT_MIRROR_HEADER = [
|
|
|
['fastly-polyfill.net/', 'https://cdnjs.cloudflare.com/polyfill/'],
|
|
|
// BootCDN has been controlled by a malicious actor and being used to spread malware
|
|
|
['cdn.bootcss.com/', 'https://cdnjs.cloudflare.com/ajax/libs/'],
|
|
|
-
|
|
|
['cdn.bootcdn.net/', 'https://cdnjs.cloudflare.com/ajax/libs/'],
|
|
|
- ['cdn.bootcdn.com/', 'https://cdnjs.cloudflare.com/ajax/libs/'],
|
|
|
['cdn.staticfile.net/', 'https://cdnjs.cloudflare.com/ajax/libs/'],
|
|
|
['cdn.staticfile.org/', 'https://cdnjs.cloudflare.com/ajax/libs/'],
|
|
|
// Misc
|
|
|
@@ -148,7 +142,7 @@ const REDIRECT_FAKEWEBSITES = [
|
|
|
export const buildRedirectModule = task(require.main === module, __filename)(async (span) => {
|
|
|
const domains = Array.from(new Set([
|
|
|
...REDIRECT_MIRROR_HEADER.map(([from]) => getHostname(from, { detectIp: false })),
|
|
|
- ...REDIRECT_FAKEWEBSITES.flatMap(([from]) => [from, `www.${from}`]),
|
|
|
+ ...REDIRECT_FAKEWEBSITES.flatMap(([from]) => [from, `*.${from}`]),
|
|
|
...REDIRECT_MIRROR_307.map(([from]) => getHostname(from, { detectIp: false }))
|
|
|
])).filter(isTruthy);
|
|
|
|
|
|
@@ -156,7 +150,7 @@ export const buildRedirectModule = task(require.main === module, __filename)(asy
|
|
|
span,
|
|
|
[
|
|
|
'#!name=[Sukka] URL Redirect',
|
|
|
- `#!desc=Last Updated: ${new Date().toISOString()}`,
|
|
|
+ `#!desc=Last Updated: ${new Date().toISOString()} Size: ${domains.length}`,
|
|
|
'',
|
|
|
'[MITM]',
|
|
|
`hostname = %APPEND% ${domains.join(', ')}`,
|