WordPress搜索功能限制用户一定时间内的搜索次数

WordPress的搜索一直是一个非常占用系统资源的功能,如果你的网站数据很多(文章很多),那么执行一次搜索会相对卡顿。如果被别有用心的人利用了,就可以导致网站被攻击,无法访问的情况出现。

在 WordPress 进行搜索是一个常见的操作,而 WordPress 搜索的底层其实就是使用 MySQL Like 语法去检索文章的标题,摘要和内容查出相关的文章。一般情况 WordPress 这样搜索没有什么大的问题,可能中文分词会存在一些语义理解的小问题,但是通过多次修改关键字多搜索几次总能找到想要的文章。

图片[1]-WordPress搜索功能限制用户一定时间内的搜索次数-十一张

而这样 MySQL Like 查询相对来说是比较耗时的,这就存在被攻击的漏洞!因为 WordPress 搜索的链接是 https://www.11zhang.com/?s=关键词,攻击者只要使用脚本不停的切换关键字,就会造成系统不停地去数据库搜索查询,生成的缓存键都是不同,这时候缓存都起不了作用,会导致服务器CPU使用率和负载状态100%爆满的情况。

基于这种情况,今天十一张(www.11zhang.com)给大家分享一个可以在一定时间内限制 WordPress 搜索次数的插件:Search Limiter & Blocker

图片[2]-WordPress搜索功能限制用户一定时间内的搜索次数-十一张

Search Limiter & Blocker 插件描述称:您可以通过IP地址为访问者设置搜索限制。插件会自动检测访问者的IP地址,并对这些IP地址的每个搜索行为进行计数。您可以为这些IP地址设置限制和阻塞时间。

插件页面:https://wordpress.org/plugins/search-limiter-blocker

在 WordPress 后台查找“Search Limiter & Blocker”插件,可以直接安装,如下图。

图片[3]-WordPress搜索功能限制用户一定时间内的搜索次数-十一张

安装好插件之后,设置非常简单,如下图,有三个输入框,分别设置:搜索次数、搜索时间间隔以及禁止搜索后的提示。

图片[4]-WordPress搜索功能限制用户一定时间内的搜索次数-十一张

虽然使用 Search Limiter & Blocker 插件只能限制搜索次数,但当用户体量大时,使用这个插件确实可以起到减小服务器压力的作用。

图片[5]-WordPress搜索功能限制用户一定时间内的搜索次数-十一张

禁止搜索提示内容参考:

●一分钟内只能搜索3次,请珍惜你的搜索机会!
●搜索频率超过每分钟3次,限制访问60秒,请稍后再试!
●已达文章搜索次数上限,请5分钟后重试!

✅来源:十一张博客
温馨提示:本文最后更新于2024-12-16 22:49:53,某些文章具有时效性,若有错误或已失效,请在文末留言
© 版权声明
THE END
如果觉得这篇文章对您有帮助,可以收藏本网址,方便下次访问!
点赞1 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容