5

我正在尝试减少我们网站上的垃圾邮件。(它实际上是最近的)。

我似乎记得在某处读到垃圾邮件发送者没有在网站上执行 Javascript。

真的吗?如果是这样,那么您是否可以简单地检查是否禁用了 javascript,然后确定它很可能是垃圾邮件?

4

6 回答 6

8

仍然有很多人在关闭 Javascript 的情况下运行。

或者,我在使用 CSS 阻止垃圾邮件方面取得了不错的成功。基本上,包括一个使用 CSS ( ) 隐藏的输入字段和标签,display: none;一旦提交,检查是否在该字段中输入了任何内容。

我通常将该字段标记为垃圾邮件过滤器,并指示不要在该字段中放置任何内容,但所有较新的浏览器都会正确隐藏该块。

reCAPTCHA也非常容易实现。

于 2008-09-09T17:19:42.063 回答
2

检查http://kahi.cz/wordpress/ravens-antispam-plugin/以获得很好的答案

如果放入

<noscript><p><label for="websiteurl99f">Please type "e73053": </label><input type="text" name="websiteurl99f" id="websiteurl99f" /></p></noscript>
        <script type="text/javascript">/* <![CDATA[ */ document.write('<div><input type="hidden" name="websiteurl99f" value="e' + '73053" \/><\/div>'); /* ]]> */</script>

所以 javascript 用户什么都看不到,非 js 用户只需输入一个单词

如果垃圾邮件发送者专门针对您,他们不会花很长时间对其进行编码,但对于垃圾邮件发送者的驱动,它应该是好的

于 2008-10-05T11:52:25.363 回答
1

您可以检查 - 让 JavaScript在页面加载使用特定值填充隐藏的表单字段。然后,当页面回传到服务器时,检查隐藏表单字段的预期值。如果它不存在,则意味着 JavaScript 没有执行。

至于您是否应该假设它是垃圾邮件完全是另一回事,而且确实没有确定的答案。您可以简单地拥有一个<noscript>标签,并让它向用户表明除非他们启用 JavaScript,否则他们的提交不会被接受。

但是,一旦您运行了 JavaScript,垃圾邮件发送者就会为此使用另一种解决方法。:)

于 2008-09-09T17:16:53.927 回答
1

同样,添加一个虚拟字段然后使用 CSS 隐藏它是欺骗机器人的好方法。如果该字段已提交,您就知道可能是非人类完成了该表单。

如果您按照URLwebsite的行标记/命名字段,则特别有效。

于 2008-09-09T17:19:59.330 回答
0

我不记得我在哪里看到过这种方法,但垃圾邮件机器人喜欢填写表格。您是否考虑过放置一个用 javascript 隐藏的表单字段(并说如果用户没有 JavaScript,请不要填写此字段)。这样,如果此字段中有某些内容,您可以将其视为垃圾邮件而忽略。

于 2008-09-09T17:16:43.847 回答
0

你有这个运气吗?我认为一些基于文本的浏览器已经实现了基本的 JavaScript 支持,所以也许垃圾邮件机器人也有?

否则,我正在考虑为没有 JavaScript 的用户使用验证码,并为其他用户使用一些自动 JavaScript 检查。

于 2009-08-25T07:55:27.527 回答