我正在开发一个MediaWiki插件,如果用户有三次以上的不良登录尝试,它会添加一定的验证码。我基于现有的ConfirmEdit插件,但由于某种原因,他们存储错误登录尝试的方式似乎对我不起作用。检查他们使用的代码后,似乎他们正在使用全局变量$wgMemc
,在我的情况下,它似乎是FakeMemchachedClient
的一个实例。这是一个假的memchache,只需在所有内容中返回true,甚至不保存任何内容。
我正在尝试找出如何实现另一种内部跟踪不良登录量的方法,最好不要为此咨询数据库。
我唯一可以想到的就是完全避免了缓存,这就是错误登录的数量,但这很容易被智能用户/机器人修改......
有人有什么想法吗?
答案 0 :(得分:2)
理想情况下,$wgMemc
应为MemcachedPhpBagOStuff
的实例。它实际上是memcached的一个接口,请参阅MediaWiki page有关它的更多信息和MediaWiki用法。
对于这个用例,它将是一个很好的选择。但是,由于您似乎没有设置memcached,唯一可行的替代方案可能是使用数据库。