nginx ログ形式は次のとおりです。
log_format main '$remote_addr [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$cookie_logintoken"';
log_by_lua_file を設定しました
log_by_lua_file xxxxx/ngx_lua_waf/log.lua;
および log.lua コンテンツ:
ngx.req.set_header("User-Agent", "this is testing User-Agent")
ngx.req.set_header("Referer", "this is testing Referer")
および access.log の変更
127.0.0.1 [17/Dec/2016:16:21:47 +0800] "GET /test/client.php HTTP/1.1" 200 1370 "this is testing Referer" "this is testing User-Agent" "-" "-"
$request のように nginx ビルドイン変数を変更するにはどうすればよいですか? nginxログ前の「GET /test/client.php HTTP/1.1」をaccess.logに変更したい
ngx.var.request = "xxxx" はエラーになります:
failed to run log_by_lua*: xxxx/ngx_lua_waf/log.lua:15: variable "request" not changeable
しかし、私は ngx.req.set_header でそれを変更する方法を知りません
誰かがそれを変更する方法を教えてもらえますか?