HttpLimitReqModule: In the error log, what is the unit of the "excess" value?

2013-10-28 Thread Brian08275660
Hi, This is an example of an entry in the log, left by HttpLimitReqModule: 2013/10/27 10:00:11 [error] 1402#0: *313355 limiting requests, excess: 0.580 by zone "zone1", client: 20.147.43.103, server: api.acme.com, request: "GET /location/locate-ip?key=&ip=85.210.42.204 HTTP/1.1", host: "api.a

Re: HttpLimitReqModule delivers "nginx/1.4.3" as a message for HTTP status code 429. Too generic!

2013-10-27 Thread Brian08275660
Hi Francis, Probably I shouldn't have said "malformed" when I chose a word to express the problem with the response. But I assumed that Nginx should show the phrase that corresponds to the code. I assumed that Nginx has been coded so it know that 429 means "Too Many Requests" and that we should re

Re: HttpLimitReqModule delivers "nginx/1.4.3" as a message for HTTP status code 429. Too generic!

2013-10-27 Thread Brian08275660
This is the output: root@ip-10-139-33-71:~# curl -v * About to connect() to api.xx.com port 80 (#0) * Trying 40.57.235.104... connected > GET /location/locate-ip?key=BBANBWEDS7UZ6FD8747F76VZ&ip=201.1.1.1 HTTP/1.1 > User-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/

Re: HttpLimitReqModule delivers "nginx/1.4.3" as a message for HTTP status code 429. Too generic!

2013-10-27 Thread Brian08275660
Hi Francis, I think I'm actually reporting a malformed response, it is Nginx that send "nginx/1.4.3" instead of something useful as "too many requests". I have tested it with Firefox and there is no doubt. Also tested it with a java HTTP client component, the same result. The status code received

HttpLimitReqModule delivers "nginx/1.4.3" as a message for HTTP status code 429. Too generic!

2013-10-26 Thread Brian08275660
Hi, I'm doing this: limit_req_status 429; The module HttpLimitReqModule delivers "nginx/1.4.3" (at least with version 1.4.3) as a message for the HTTP status code 429. That is too generic and not useful at all. Why doesn't it deliver a "Too Many Requests" message instead of that? It is absurd, u

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-26 Thread Brian08275660
Oh, ok. Then it is similar to REGEX in Java. Well, then I think I have a nice and elegant solution, Thanks! Posted at Nginx Forum: http://forum.nginx.org/read.php?2,244015,244149#msg-244149 ___ nginx mailing list nginx@nginx.org http://mailman.nginx.o

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-25 Thread Brian08275660
I read some information about REGEX and think I found the way to express "X or x, preceded with something before": ~*(.*)X I think that the first two characters mean "match anycase", then the "(.*)" would mean "any quantity of characters" and the "X" would mean that specific letter. Am I right?

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-25 Thread Brian08275660
Hi Payam, I dont have that option. My users are not using real browsers, but objects that model an HTTP client. Probably these object can't inject cookies. And I don't want to ask them to so so, it would make things more complex to them, whereas including an extra parameter in the query string is

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-25 Thread Brian08275660
Hi Jader, Thanks a lot, that looks like a nice solution! I barely know how to build regex expressions, and I'm too lazy to learn just right now. Just a final question: Actually they will send me any value from 2X to 25X, but that could even increase to more than 25. I would like a simpler and mor

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-25 Thread Brian08275660
Hi Francis, Now I need to create a limit that acts if the parameter ("capacity") is empty (not provided). How do I do that? I can't find how to, at least not using "map". (If provided, the other rules will evaluate it and one of them will act according to the value). Thanks in advanced! Posted a

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-24 Thread Brian08275660
Hi Francis, Thanks a lot! You saved me probably a couple of days of research. It is working now! I did this: The user will send my a "capacity" parameter, with a value of 2X or 3X or 4X or..(etc) map $arg_capacity $2X_key{~*2X $http_x_forwarded_for;default "";} map $arg_capa

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-23 Thread Brian08275660
Thanks a lot Francis! Now I just have to learn how to use the custom variables and the "map" directive. I haven't ever used them before, never needed them. By the way, it will be easier than what I thought. I decided to ask my users to add an extra parameter, something like "&capacity=3X" instead

Re: limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-23 Thread Brian08275660
Could you please give me an example? A few lines of code would be great! Posted at Nginx Forum: http://forum.nginx.org/read.php?2,244015,244035#msg-244035 ___ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx

limit_req_zone: How to apply only to some requests containing some string in the URL?

2013-10-22 Thread Brian08275660
Hi, I'm using the limit_req_zone module. I would like it to act only on some requests that have a certain string in one variable in the query string of the URL.For example, lets say that I'm providing a IP geolocation service, and that in the URL there is a query string like this: http://api.acme