如何获取 Nginx 当前服务的请求的 URL?

如何获取 Nginx 当前服务的请求的 URL?

正如标题所解释的,我想知道当前由 Nginx 提供的请求的 URL,有关 nginx_status 端点的所有答案都谈论数字请求,如果可能的话我想列出请求网址。这在 Apache 中是可能的,我有一个 WHM 服务器,在 Apache 状态页面中,我可以看到所有请求的 URL。

我在 Ubuntu 上使用 Nginx 1.14.0。

谢谢

答案1

你试过了吗https://stackoverflow.com/questions/21135719/full-record-url-in-nginx-log? 您可以在访问日志中记录请求 URL,然后用 go/python/shell 编写程序从中抓取 URL。

答案2

要显示完整的 URL,请添加以下内容

log_format main '$remote_addr - $remote_user [$time_local] '
                '"$request_method $scheme://$host$request_uri $server_protocol" '
                '$status $body_bytes_sent "$http_referer" '
                '"$http_user_agent" $request_time';

如果你使用反向代理,请将 $remote_addr 替换为 $http_x_forwarded_for https://nginx.org/en/docs/http/ngx_http_log_module.html?&_ga=2.151893182.625836960.1700471825-1055325474.1700471825#log_format

相关内容