坚信科学,分享技术

2018全新版本,未来在blog.54chen.com更新博客!

>>>尝试更加利于阅读的2014版科学院,以后都在新版上写。

[54chen原创]简单好用的土办法抗击洋鬼子对wordpress系统的广告灌入

54chen

自升级wordpress3.0以后,一切风调雨顺,自上周起,被洋鬼子的广告肉机盯上了,平均每三五分钟一条广告,评论内容大致相同,评论ip来自五湖四海,各不相同。
虽然说akismet是wordpress中antispam无二的选择,但是akismet那个验证码让人很纠结,于是只能自己山寨一把了。
土办法步骤一 转发默认评论地址
常见的洋鬼子的广告肉机,都是利用了wordpress公开的post地址来做到脚本灌入的,其默认地址是wp-comments-post.php,第一步要做的是,屏蔽这个地址(以nginx为例):
rewrite ^/wp\-comments\-post\.php$ http://www.54chen.com/ last;

土办法步骤二 伪造假地址
既然第一步中的真实地址无法访问了,那第二步肯定是假冒出来可以访问的地址:
if (!-e $request_filename){
rewrite ^/wc([0-9]+)\.html$ /wp-comments-post.php?54chen=$1 last;
}

土办法步骤三 javascript制造假post
完成上面两步之后 ,最后一步就是将原来的comments.php修改post action的地址为伪造的地址,为了更加有效果,使用js来产生随机的wc1234.html即可:
在评论的form中增加onsubmit="chenAntiSpam()" name="commentform";
再增加js:

<script type="text/javascript">
function chenAntiSpam() {
 var param ='wc'+Math.round(Math.random()*1000)+'.html';
 document.commentform.action = 'http://www.54chen.com/'+param;
}
</script>

大功告成,有效防住了洋鬼子的灌。


原创文章如转载,请注明:转载自五四陈科学院[http://www.54chen.com]
本文链接: http://www.54chen.com/php-tech/easy-method-to-antispam-wordpress.html

This entry was posted in php and tagged , . Bookmark the permalink.

11 Responses to “[54chen原创]简单好用的土办法抗击洋鬼子对wordpress系统的广告灌入”

  1. 胖子 说:

    学习了,
    哥也有类似的经历,不过在纠结了一段时间后,就不理我了

  2. xiaokai 说:

    陈大威武, 哥学习之.

  3. ElmerZhang 说:

    akismet验证码?你是说akismet那个API KEY吗?直接到wordpress.com上注册一个帐号就有了呀

  4. wwek 说:

    还是觉得加验证码才是防止机器的最好方法·

  5. g.cn 说:

    用中文验证码怎么样?? 哈哈

  6. 鱼此鱼已 说:

    Apache的规则怎么写呢?谢谢。

Leave a Reply