在允许人们将内容发布到我的网站时,如何确保URL指向安全,非成人,非垃圾内容?

Tod*_*ses 6 php validation

我正在开发一个PHP站点,允许用户发布与站点主题相关的业务列表.这包括单个链接URL,一些文本和图像文件的可选URL.

例:

<img src="http://www.somesite.com" width="40" />
<a href="http://www.abcbusiness.com" target="new">ABC Business</a>
<p>
Some text about how great abc business is...
</p>
Run Code Online (Sandbox Code Playgroud)

使用htmlpurifier.org中的类过滤文本中的HTML,并检查内容是否有坏词,所以我对这部分感觉相当不错.

图像文件URL始终放在<img src="" />具有固定宽度的标记内,并验证为实际的HTTP URL,因此应该是Ok.

危险的部分是链接.

问题:如何确定链接不指向某些垃圾邮件,不安全或色情网站(使用代码)?

我可以检查404等标题...但是有一种快速简便的方法来验证链接中的网站内容.

编辑:

我正在使用CAPTCHA并且在允许发布之前需要注册.

pro*_*php 9

通过抓取有问题的站点URL,很难尝试自己确定.你可能想要依赖一些可以检查你的第三方API.

http://code.google.com/apis/safebrowsing/

查看该API,您可以发送一个URL,它会告诉您它的想法.这个主要是检查恶意软件和网络钓鱼......而不是色情和垃圾邮件.还有其他人做同样的事情,只是在谷歌搜索.


mea*_*gar 8

有一种快速简便的方法来验证链接中的网站内容.

没有.没有全球白/黑名单的URL可以用来以某种方式过滤掉"坏"网站,特别是因为你对"坏"网站的定义是如此不明确.

即使你可以查看一个URL并告诉它所指向的页面是否包含不良内容,这些天很容易伪装一个URL.

如果你真的需要阻止这种情况,你应该调整你的内容.任何自动化解决方案都将是不完美的,无论如何你最终会手动调节.