显示传递给fastcgi的nginx日志和参数中的真实服务器名称?

我用server_name中的正则expression式configuration了我的nginx虚拟主机。 nginx显示日志中的原始正则expression式和传递给php-fpm的参数(我知道$_SERVER['HTTP_HOST']具有实际值,这不是问题)。 我的问题是我怎么能让nginx把真正的主机名,而不是正则expression式。

server_name指令看起来像这样:

server_name ~^(:?(?<second>.+)\.)?(?<domain>[^.]+\.[^.]+)$;

在您的log_format使用$http_host来获取客户端发送的实际主机。

您也可以在access_log指令中使用该variables来按主机名拆分日志。