如何在 Apache 的 mod_security 模块中设置规则

how to set rules in mod_security module in Apache

谁能帮我设置规则,让我只获得使用 POST 发布的数据。我有一个表格,我要在其中提交姓名和电子邮件 ID。我只想保存要保存在日志文件中的那部分。在我的场景中,我只想在我的日志文件中包含以下数据:-

--29000000-C--
name1=ssn&email1=ssn%40gmail.com
--29000000-F--
HTTP/1.1 200 OK
X-Powered-By: PHP/7.2.4
Content-Length: 16
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8

我的礼物mod_security长这样:-

<IfModule security2_module>
#Enable the module.
SecRuleEngine On
SecAuditEngine on

#Setup logging in a dedicated file.
SecAuditLog C:/wamp64/bin/apache/apache2.4.33/logs/website-audit.log

#Allow it to access requests body.
SecRequestBodyAccess on
SecAuditLogParts ABIFHZ

#Setup default action.
SecDefaultAction "nolog,noauditlog,allow,phase:2"

#Define the rule that will log the content of POST requests.
SecRule REQUEST_METHOD "^POST$" "chain,allow,phase:2,id:123"
SecRule REQUEST_URI ".*" "auditlog"

</ifmodule>

我找到了问题的解决方案。我们可以根据需要设置以下字段:-

SecAuditLogParts ABIFHZ

在我的例子中,我将字段设置为:- SecAuditLogParts C

但是它会显示为:-

--84670000-A--
[29/Aug/2018:14:49:58 +0200] W4aWdqHJuCcOQzTIgCiEqAAAAD8 127.0.0.1 60735 127.0.0.1 80
--84670000-C--
name1=red&email1=red%40yahoo.com
--84670000-Z--