privacy-protection-tools / anti-AD

致力于成为中文区命中率最高的广告过滤列表,实现精确的广告屏蔽和隐私保护。anti-AD 现已支持 AdGuardHome,dnsmasq,Surge,Pi-Hole,Clash, mihomo,smartdns,sing-box 等网络组件。完全兼容常见的广告过滤工具所支持的各种广告过滤列表格式
https://anti-ad.net
MIT License
8.6k stars 732 forks source link

[误杀] Fandom 图片相关异常 #994

Closed Litttlefish closed 15 hours ago

Litttlefish commented 18 hours ago

注意事项

使用的规则

anti-ad-easylist.txt

使用的拦截工具

其他

误杀域名

不清楚

问题描述

  1. 问题发生时间: 暂不明确,已知 从十月访问时就出现了这个现象
  2. 涉及的平台/软件/功能: Fandom,图片查看
  3. 误杀造成的影响: 无法加载Gallery内图片,无法点击查看(点击会跳转回当前页面且无变化)
  4. 截图、附件等(如有): 图片 并非代理问题,关闭Ublock Origin或去除Anti-AD都可解决
welcome[bot] commented 18 hours ago

Thank you for opening your first issue in this repo. It’s people like you who make anti-AD better!

Litttlefish commented 18 hours ago

Update: 切换为anti-ad-adguard.txt可修复

MkQtS commented 16 hours ago

提供一下这个 Fandom Gallery 网页链接?

Litttlefish commented 16 hours ago

提供一下这个 Fandom Gallery 网页链接?

https://oneshot.fandom.com/wiki/Prophetbot/Gallery

MkQtS commented 15 hours ago

问题产生的原因是 anti-ad-easylist.txt 中的 /^(\S+\.)?track(ing)?\./ 这一规则,匹配上了 Fandom Gallery 的这类后台网络请求: https://oneshot.fandom.com/load.php?lang=en&modules=client-CzBcU33f.js%7Cext.fandom.Track.pageview.js%7Cjquery&skin=fandomdesktop&version=10sxu(路径中带有 track. ),然后 uBlock Origin 拦截了这条网络请求,造成网页异常(不显示图片)

解决方案是不要在 uBlock Origin 这类能够匹配 URL 路径的浏览器插件使用 anti-ad-easylist.txt,可以使用 anti-ad-adguard.txt

anti-ad-easylist.txt 与 anti-ad-adguard.txt 的不同主要是前者包含一些正则规则,anti-ad-easylist.txt 是设计给 AdGuardHome 使用的,AdGuardHome 只能获取到域名解析请求,anti-AD 项目也只做域名层级的拦截,都不涉及 URL 路径

/^(\S+\.)?track(ing)?\./ 是一条正则匹配的规则,预期是匹配并拦截 track.example.com, tracking.example.com 这样的域名而非 URL 路径中带有 track. 的特定网络请求。在 uBlock Origin 使用 anti-ad-easylist.txt,uBlock 会用整个 URL 而不仅是域名部分来进行匹配,反而弄巧成拙

Litttlefish commented 15 hours ago

问题产生的原因是 anti-ad-easylist.txt 中的 /^(\S+\.)?track(ing)?\./ 这一规则,匹配上了 Fandom Gallery 的这类后台网络请求: https://oneshot.fandom.com/load.php?lang=en&modules=client-CzBcU33f.js%7Cext.fandom.Track.pageview.js%7Cjquery&skin=fandomdesktop&version=10sxu(路径中带有 track. ),然后 uBlock Origin 拦截了这条网络请求,造成网页异常(不显示图片)

解决方案是不要在 uBlock Origin 这类能够匹配 URL 路径的浏览器插件使用 anti-ad-easylist.txt,可以使用 anti-ad-adguard.txt

anti-ad-easylist.txt 与 anti-ad-adguard.txt 的不同主要是前者包含一些正则规则,anti-ad-easylist.txt 是设计给 AdGuardHome 使用的,AdGuardHome 只能获取到域名解析请求,anti-AD 项目也只做域名层级的拦截,都不涉及 URL 路径

/^(\S+\.)?track(ing)?\./ 是一条正则匹配的规则,预期是匹配并拦截 track.example.com, tracking.example.com 这样的域名而非 URL 路径中带有 track. 的特定网络请求。在 uBlock Origin 使用 anti-ad-easylist.txt,uBlock 会用整个 URL 而不仅是域名部分来进行匹配,反而弄巧成拙

行,另外能否在readme中注明一下,这样可以避免后来人碰到这个问题

MkQtS commented 15 hours ago

其实 anti-ad-easylist.txt 文件开头就写了

!!!note! If you are using "AdGuard", please load https://anti-ad.net/adguard.txt
!!!This list only applies to "AdGuard Home".
Litttlefish commented 15 hours ago

其实 anti-ad-easylist.txt 文件开头就写了

!!!note! If you are using "AdGuard", please load https://anti-ad.net/adguard.txt
!!!This list only applies to "AdGuard Home".

那确实是我大意了,这个我当时还没搞明白AdGuard和哪些block类似