matomo/referrer-spam-list

社区贡献的垃圾引用列表


README

这是一个由Matomo维护的社区贡献的垃圾引用列表,Matomo是领先的开源网站分析平台。

用法

列表存储在这个存储库中的spammers.txt文件中。此文本文件每行包含一个主机。

您可以手动下载此文件,下载整个文件夹的zip文件或使用git克隆存储库。

git clone https://github.com/matomo-org/referrer-spam-list.git

PHP

如果您正在使用PHP,您也可以通过Composer安装列表

composer require matomo/referrer-spam-blacklist

使用您喜欢的语言解析文件应该相当简单。请注意,该文件可能包含空行。

以下是一个使用PHP的示例

$list = file('spammers.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

Nginx

Nginx的server块可以配置为检查引用并返回错误

if ($http_referer ~ '0n-line.tv') {return 403;}
if ($http_referer ~ '100dollars-seo.com') {return 403;}
...

当组合在一起时,列表超过单个正则表达式的最大长度,因此必须像上面那样拆分主机。

以下是一个创建nginx配置文件的bash脚本

sort spammers.txt | uniq | sed 's/\./\\\\./g' | while read host; 
do 
    echo "if (\$http_referer ~ '$host') {return 403;}" >> /etc/nginx/referer_spam.conf
done;

然后您可以在server块中包含/etc/nginx/referer_spam.conf;

现在作为一个每日cron作业,以便列表保持最新

0 0 * * * cd /etc/nginx/referrer-spam-blacklist/ && git pull > /dev/null && echo "" > /etc/nginx/referer_spam.conf && sort spammers.txt | uniq | sed 's/\./\\\\\\\\./g' | while read host; do echo "if (\$http_referer ~ '$host') {return 403;}" >> /etc/nginx/referer_spam.conf; done; service nginx reload > /dev/null

在Matomo(原Piwik)中

此列表包含在每个Matomo版本中,以自动过滤垃圾引用。Matomo还将每周自动更新此列表到最新版本。

贡献

要向列表添加新的垃圾引用者,请在此处编辑spammers.txt文件并选择Create a new branch for this commit and start a pull request.。请在您的pull请求中解释引用域名出现的地方以及为什么您认为它是垃圾邮件发送者。请为每个新域名打开一个pull请求

如果您打开pull请求,如果您保持每行一个主机名、保持列表按字母顺序排序并使用Linux行结束符,那将是受欢迎的。

请在打开新的之前请搜索是否有人已经报告了该主机。

子域名

Matomo会从这个列表中对域名进行子字符串匹配,因此添加semalt.com就足以阻止所有子域名引用,例如semalt.semalt.com

然而,有些情况下,您只想添加子域名,而不是根域名。例如,添加referrerspammer.tumblr.com而不是tumblr.com,否则所有*.tumblr.com网站都会受到影响。

排序

为了保持分支之间的列表排序方式相同,建议让计算机进行排序。列表遵循在sort中实现的归并排序算法。您可以使用sort对列表进行排序并过滤重复项。

sort -uf -o spammers.txt spammers.txt

社区项目

Apache .htaccess 搜索引擎流量作弊黑名单 - 为 Apache 用户提供的脚本,根据 spammers.txt 生成 RewriteConds 列表。

免责声明

这份搜索引擎流量作弊黑名单由社区贡献,提供现状。请自行决定是否使用:它可能不完整(尽管我们努力保持其最新状态),也可能包含过时条目(如果某个域名被添加但实际上不是作弊者,请告知我们)。

许可协议

公有领域(无版权)。