浏览代码

Fix fake websites redirect in uBO

SukkaW 2 月之前
父节点
当前提交
89da1fd8fe
共有 1 个文件被更改,包括 9 次插入1 次删除
  1. 9 1
      Build/build-sgmodule-redirect.ts

+ 9 - 1
Build/build-sgmodule-redirect.ts

@@ -269,7 +269,15 @@ function uBOUriTransformGeneratorForFakeWebsites(acc: string[], [from, to]: [fro
     '||'
     '||'
     + from
     + from
     + '$all,uritransform=/'
     + '$all,uritransform=/'
-    + String.raw`.*` + escapeRegexp(from).replaceAll('/', String.raw`\/`) + String.raw`\/(.*)`
+    // \/.*formysql\.com\/.*
+    //
+    // By adding \/.* at the beginning and the end, we can avoid replace the protocol (https:// or http://),
+    // which will bork uBlock Origin's filter matching (requires final URL to be a valid URL):
+    //
+    // https://www.formysql.com/en/products/navicat-for-mysql
+    //        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+    // https://www.navicat.com.cn
+    + String.raw`\/.*` + escapeRegexp(from).replaceAll('/', String.raw`\/`) + String.raw`.*`
     + '/'
     + '/'
     + to.replace('https://', '').replaceAll('/', String.raw`\/`)
     + to.replace('https://', '').replaceAll('/', String.raw`\/`)
     + '/'
     + '/'