Chrome扩展程序,用于根据数据库黑名单阻止网站

时间:2014-01-29 00:31:16

标签: javascript php google-chrome google-chrome-extension

我们有一个包含数百万个域名分类的数据库(存储客户端不是一个选项),我们希望根据它们在Mysql数据库中的分类方式对站点进行黑名单扩展。

服务器端的东西很简单,我们发布域名,然后返回类别。

棘手的部分是根据分类阻止请求。以下是一些可能的实现以及为什么它们不会(非常)起作用。

创意1:

  1. 使用Chrome.webRequest将所有流量重定向到mysite.com/script.php?url=www.theoriginalurl
  2. 此脚本检查数据库的类别&将它们重定向到theoriginalurl.com或拒绝请求,将它们重定向到www.youGotBlocked ......
  3. 让chrome扩展程序检查http referrer标头以确保它们来自mysite.com(除非url是mysite.com,然后什么都不做)。
  4. 问题:

    我们似乎无法在PHP中设置引用标头,因此我们无法知道它们来自mysite.com。似乎我们应该通过cookie传递信息,但我还没有想到一个涉及cookie的优雅解决方案。

    创意2:

    每次Chrome.webRequest触发向mysite.com/categorizeURL.php发出AJAX POST请求时都会获取该类别的URL。根据服务器的响应阻止或允许。

    问题:

    我们要求请求是异步的,我们无法及时得到响应(我们发现在服务器响应之前我们没有发现延迟回调 - 更多关于here)。或者我们使请求同步,并且它工作!除了他们无法访问我们的服务器,他们的整个浏览器锁定,他们基本上需要刷新扩展,以便能够再次访问互联网。

    其他想法?

    有没有人对通过Chrome扩展程序创建黑名单有其他想法?我只是拒绝相信这是不可能的。

0 个答案:

没有答案