CodeIgniter4 Honeypot 类
Honeypot类可以确定Bot何时向CodeIgniter4应用程序发出请求(如果已在Application\Config\Filters.php文件中启用该请求)。这是通过将表单域附加到任何表单来完成的,该表单域对人类是隐藏的,但Bot可以访问。当数据输入到字段中时,假设请求来自Bot,则可以抛出HoneypotException。
启用 Honeypot
要启用Honeypot,必须对进行更改app/Config/Filters.php。只需取消注释$globals阵列中的honeypot,例如…:
public $globals = [
'before' => [
'honeypot'
// 'csrf',
],
'after' => [
'toolbar',
'honeypot'
]
];
捆绑了一个示例Honeypot过滤器,如system/Filters/Honeypot.php。如果不合适,请在创建自己的app/Filters/Honeypot.php,并$aliases在配置中适当地修改。
定制 Honeypot
Honeypot 可以定制。可以在app/Config/Honeypot.php或中设置以下字段 .env。
hidden-true | false用于控制 Honeypot 字段的可见性;默认是truelabel-Honeypot字段的HTML标签,默认为“填写此字段”name-用于模板的HTML表单字段的名称;默认为“honeypot”template-用于 honeypot 的表单字段模板;默认为'<label> {label} </ label> <input type =” text” name =“” {name}” value =”” />