当写入访问日志时,Nginx禁用或解码URL编码。

我有一个使用 Lua 代码增强数据的 open resty nginx,然后将这些数据写入访问日志进行数据分析。 Lua 代码生成的数据包括双引号,但是 nginx 将其写入访问日志时会写成 \x22。 我能否禁用这种行为或将其解码回 "?"?

点赞
用户4449181
用户4449181

答案是不可以。

但是,你可以在日志轮换后运行URL解码操作。

以下是命令:

awk -v RS='\\\\x[0-9]{2}' 'RT{ORS=sprintf("%c", strtonum("0" substr(RT, 2)))} 1'
2015-06-09 16:40:20