로깅을 위해 쿼리 문자열을 분석하고 구문 분석을 처리 할 수있는 픽셀을 렌더링하는 GET 요청을 처리하도록 구성 설정을했습니다. 추가 제 3 자 데이터 스트림을 사용하면 JSON이 요청 본문 내에 예상되는 로그 형식으로 제공된 URL에 POST 요청을 처리해야합니다. proxy_pass
과 함께 보조 서버를 사용하고 GET 요청과 같은 관련 로그 파일에 전체 응답을 기록하기를 원합니다. (잘 작동)
GET 요청 : 나는 다음과 같은 모양을 사용하고 일부 코드의 조각 POST 요청을 (않는 : 여기
location ^~ /rl.gif {
set $rl_lcid $arg_lcid;
if ($http_cookie ~* "lcid=(.*\S)")
{
set $rl_lcid $cookie_lcid;
}
empty_gif;
log_format my_tracking '{ "guid" : "$rl_lcid", "data" : "$arg__rlcdnsegs" }';
access_log /mnt/logs/nginx/my.access.log my_tracking;
rewrite ^(.*)$ http://my/url?id=$cookie_lcid? redirect;
}
는 내가 뭘하려고 오전 좀입니다 작동하지 않음) :
location /bk {
log_format bk_tracking $request_body;
access_log /mnt/logs/nginx/bk.access.log bk_tracking;
}
컬링 curl http://myurl/bk -d name=example
404 페이지를 찾을 수 없습니다.
location /bk.gif {
empty_gif;
log_format bk_tracking $request_body;
access_log /mnt/logs/nginx/bk.access.log bk_tracking;
}
컬링 curl http://myurl/bk.gif -d name=example
나에게 405 Not Allowed
제공합니다.
현재 버전은 nginx/0.7.62
입니다. 올바른 방향으로 어떤 도움을 주셔서 감사합니다! 감사!
location /bk {
if ($request_method != POST) {
return 405;
}
proxy_pass $scheme://127.0.0.1:$server_port/dummy;
log_format my_tracking $request_body;
access_log /mnt/logs/nginx/my.access.log my_tracking;
}
location /dummy { set $test 0; }
그것은 정확하게 후 데이터를 기록하고 있지만 요청자에 404 종료 반환
UPDATE 은 이제 내 게시물은 다음과 같습니다.
location /bk {
if ($request_method != POST) {
return 405;
}
proxy_pass $scheme://127.0.0.1:$server_port/dummy;
log_format my_tracking $request_body;
access_log /mnt/logs/nginx/my.access.log my_tracking;
return 200;
}
location /dummy { set $test 0; }
는 그 다음 올바르게
200
를 반환하지만, 더 이상 포스트 데이터를 기록 : 나는 위의 코드를 변경하는 경우과 같이 200을 반환 없습니다.
다른 업데이트 킨다가 해결책을 찾았습니다. 희망적으로 이것은 다른 사람들을 도울 수 있기를 바랍니다.
당신이 어디에서나거야? 나는 비슷한 문제에 반대한다. –