URL-адрес Proxy_pass в файле access.log - PullRequest
0 голосов
/ 23 января 2020

У меня есть директива location с proxy_pass в ней, основанная на регулярном выражении в местоположении, например:

location ~ \/proxy\/([w]+)
{
proxy_pass http://56.25.11.152:80/$1
}

Я также определил в nginx cofing file:

log_format upstream_logging '[$time_local] $remote_addr - $remote_user - $server_name to: $upstream_addr: $request upstream_response_time $upstream_response_time msec $msec request_time $request_time';

access_log  /var/log/nginx/access.log upstreamlog;

Это дает мне нужен правильный хост и порт конечного адреса, который создается в proxy_pass, который 56.25.11.152:80 (адрес с портом, к которому мы используем прокси).

Но он не дает мне путь, к которому мы прокси, только хост и порт.

Это дает мне только путь, который я go, чтобы попасть в эту директиву местоположения (/proxy/www). Но не дает мне путь, который используется в proxy_pass.

Например

location ~ \/proxy\/([w]+)
{
proxy_pass http://56.25.11.152:80/ok/we/$1
}

И, нажав localhost/proxy/www в access.log, я получаю /proxy/www вместо /ok/we/www .

Так что я знаю только, какой путь к местоположению я выбрал в браузере, что на самом деле localhost/proxy/www.

Но я не знаю, какой путь используется в proxy_pass , который должен быть /ok/we/www. Но как я могу быть уверен? Я могу только верить, у меня нет такой информации в моих журналах. Вот в чем проблема.

В лучшем случае я бы даже хотел, чтобы в access.log был зарегистрирован весь URL-адрес proxy_pass, созданный и проксированный по адресу.

...