Yes, the url sample copies whole URL as sent by the client.
Simply give it a try on a staging server and let us know the status.

Baptiste

On Wed, Jun 3, 2015 at 3:19 PM, Sachin Shetty <[email protected]> wrote:
> Thanks Baptiste - Will "http-request set-header X-track %[url]" help me
> track URL with query parameters as well?
>
> On 6/3/15 6:36 PM, "Baptiste" <[email protected]> wrote:
>
>>On Wed, Jun 3, 2015 at 2:17 PM, Sachin Shetty <[email protected]> wrote:
>>> Hi,
>>>
>>> I am trying to write some throttles that would limit concurrent
>>>connections
>>> for Range requests + specific urls. For example I want to allow only 2
>>> concurrent range requests downloading a file
>>> /public-api/v1/fs-content-download
>>>
>>> I have a working rule:
>>>
>>> stick-table type string size  1M expire 10m store conn_cur
>>> tcp-request inspect-delay 5s
>>> acl is_range  hdr_sub(Range) bytes=
>>> acl is_path_throttled path_beg /public-api/v1/fs-content-download
>>> tcp-request content track-sc1 base32 if is_range is_path_throttled
>>> http-request deny if { sc1_conn_cur gt 2 } is_range is_path_throttled
>>>
>>> Just wanted to see if there is a better way of doing this? Is this
>>>efficient
>>> enough.
>>>
>>> I need to include the query string as well in my tracker, but I could
>>>not
>>> figure that out.
>>>
>>> Thanks
>>> Sachin
>>>
>>
>>Hi Sachin,
>>
>>I would do it like this:
>>
>> stick-table type string size  1M expire 10m store conn_cur
>> tcp-request inspect-delay 5s
>> tcp-request accept if HTTP
>> acl is_range  hdr_sub(Range) bytes=
>> acl is_path_throttled path_beg /public-api/v1/fs-content-download
>> http-request set-header X-track %[url]
>> http-request track-sc1 req.hdr(X-track) if is_range is_path_throttled
>> http-request deny if { sc1_conn_cur gt 2 } is_range is_path_throttled
>>
>>There might be some typo, but you get the idea.
>>
>>Baptiste
>
>

Reply via email to