Здравствуйте, имеется приложение в котором надо бы собрать статистику при обращении к
location /open и location /load
На данный момент сделано следующее:
upstream app_server{
server 127.0.0.1:7101; # основное приложение
}
upstream stat_app_server{
server 127.0.0.1:9292; # для сбора статистики
}
server {
listen 80 default_server;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
..........
if (!-f $request_filename) {
proxy_pass http://app_server;
break;
}
}
# Rails error pages
error_page 500 502 503 504 /500.html;
location = /500.html {
root .....-major/current/public;
}
location /open {
echo_subrequest_async POST '/openstat' -q 'uri=$request_uri&refer=$http_referer&ip=$remote_addr';
proxy_pass http://app_server/open;
}
location /load {
echo_subrequest_async POST '/loadstat' -q 'uri=$request_uri&refer=$http_referer&ip=$remote_addr';
proxy_pass http://app_server/load;
}
location /openstat {
proxy_pass http://stat_app_server/openstat;
}
location /loadstat {
proxy_pass http://stat_app_server/loadstat;
}
}
В итоге при запросе
http://app_url/open
отдается пустая страница от
proxy_pass http://stat_app_server/openstat;
но не от
proxy_pass http://app_server/open;
Помогите заставить nginx не отдавать результат асинхронного запроса. Или возможен другой вариант конфига?