我可以使用 NGINX 在访问/错误日志中显示端口号吗?如果有帮助,我可以运行 nginx-debug。
Debian 11,免费 NGINX 1.22 下载版本(非从源代码构建)
答案1
nginx 变量文档变量显示该$server_port
变量包含请求的服务器端端口。
nginx 日志模块文档文件log_format
和access_log
指令。
默认日志格式为:
log_format combined '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
可以将端口添加到末尾,例如用于另一种日志格式:
log_format combinedwithport '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"' $server_port;
要实际使用此格式的日志,需要定义:
access_log /path/to/log/file combinedwithport;
建议将端口添加到日志行的末尾,以便可能的组合日志格式解析器仍然可以处理日志。