You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@trafficserver.apache.org by Adi Mallikarjuna Reddy V <ad...@gmail.com> on 2017/05/08 16:00:15 UTC

Re: remap rules based on request header

After adding lua plugin with remap rule in remap.config and writing some
sample code mentioned in
https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
I see the following error in traffic server.


[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create new
instance for plugin libtslua.so (not a TS_SUCCESS return)

[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule
at line #25; Aborting!

[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy] Can't
create new remap instance for plugin "libtslua.so" - [TSRemapNewInstance]
ts_lua_add_module failed at line 25

[May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
during BuildTable() -- check your remap plugins!

[May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
remap table, exiting out!


Is there any thing that I am missing out?


Thanks

Adi



On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com> wrote:

> No, you don't need lua runtime on your host. Just compile the
> experimental plugin and that's it. More information here -
> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html
>
> Thanks.
>
> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
> <ad...@gmail.com> wrote:
> > For this to work, do I have to install Lua runtime on my host?
> >
> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
> wrote:
> >>
> >> i use the lua plugin to change origin host based on certain conditions.
> >>
> >>
> >> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
> >>
> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
> >> <ad...@gmail.com> wrote:
> >>>
> >>> any help with this is greatly appreciated. Is there a debug flag to
> check
> >>> header rewrite functionality?
> >>>
> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
> >>> <ad...@gmail.com> wrote:
> >>>>
> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
> like
> >>>> this condition is not working
> >>>>
> >>>> cond %{READ_REQUEST_HDR_HOOK}
> >>>>
> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
> >>>>
> >>>> set-destination HOST dev103.abc.com [L]
> >>>>
> >>>>
> >>>>
> >>>> and
> >>>>
> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v doesnt
> >>>> take to that host specified.
> >>>>
> >>>>
> >>>>
> >>>> Thanks
> >>>>
> >>>> Adi
> >>>>
> >>>>
> >>>>
> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
> >>>> <su...@yahoo.com> wrote:
> >>>>>
> >>>>> You'd need to specify a preremap request hook (such as Read Request
> >>>>> Header) in your rules. I think the default hook is Send Response
> Header.
> >>>>>
> >>>>> - Sudheer
> >>>>>
> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
> >>>>> <ad...@gmail.com> wrote:
> >>>>>
> >>>>> Ok, I tried the following one with no luck. The requests are always
> >>>>> going to the new host without the customer header value also.
> >>>>>
> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
> >>>>> set-destination HOST dev102.abc.com [L]
> >>>>>
> >>>>>
> >>>>> my remap rule is
> >>>>>
> >>>>> map / http://abc.com/ @pristine_host_hdr=1 @plugin=header_rewrite.so
> >>>>> @pparam=my_header_rules.conf
> >>>>>
> >>>>>
> >>>>> Am I missing anything important here?
> >>>>>
> >>>>>
> >>>>> Thanks
> >>>>>
> >>>>> Adi
> >>>>>
> >>>>>
> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp...@gmail.com>
> >>>>> wrote:
> >>>>>>
> >>>>>> the lua plugin also has this functionality although may be somewhat
> >>>>>> overkill for your needs.
> >>>>>>
> >>>>>>
> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
> >>>>>> <ad...@gmail.com> wrote:
> >>>>>>>
> >>>>>>> So to achieve my use case, can I try something like this?
> >>>>>>>
> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
> @pparam=rules1.conf
> >>>>>>>
> >>>>>>> and my rules1.conf has
> >>>>>>>
> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
> >>>>>>> set-destination HOST mobile.bar.com [L]
> >>>>>>>
> >>>>>>> This should forward the request to mobile.bar.com if the request
> has
> >>>>>>> 'MY_HEADER' with value 'foo'.
> >>>>>>>
> >>>>>>>
> >>>>>>> Thanks
> >>>>>>>
> >>>>>>> Adi
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
> >>>>>>> <br...@gmail.com> wrote:
> >>>>>>>>
> >>>>>>>> Sorry I think I meant header_rewrite.
> >>>>>>>>
> >>>>>>>> Brian
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <br...@gmail.com>
> >>>>>>>> wrote:
> >>>>>>>>>
> >>>>>>>>> There is a regex_remap plugin that is what you would want, take a
> >>>>>>>>> look in plugins/
> >>>>>>>>>
> >>>>>>>>> Brian
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
> >>>>>>>>> <ad...@gmail.com> wrote:
> >>>>>>>>>>
> >>>>>>>>>> Is there a config that allows to change remap rule based on the
> >>>>>>>>>> incoming header?
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> My use case is , if I send a custom header in the request, the
> >>>>>>>>>> remap rule should be changed to different one than the default
> one
> >>>>>>>>>> configured.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Thanks
> >>>>>>>>>>
> >>>>>>>>>> Adi
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>

Re: remap rules based on request header

Posted by Jeremy Payne <jp...@gmail.com>.
remove this 'param'

@pristine_host_hdr=1

place this in your lua script, to enable pristine..

ts.http.config_int_set(TS_LUA_CONFIG_URL_REMAP_PRISTINE_HOST_HDR, 1)



On Mon, May 8, 2017 at 11:18 AM, Adi Mallikarjuna Reddy V <
adimallikarjunareddy@gmail.com> wrote:

> remap rule
>
> map /random_path http://dummy_destination.com/ @pristine_host_hdr=1
> @plugin=libtslua.so @pparam=lua_remap.lua
>
>
> script - lua_remap.lua
>
>
> function do_remap()
>
>     ts.client_request.set_url_host('actual_destination.com')
>
>     ts.client_request.set_url_port(80)
>
>     ts.client_request.set_url_scheme('http')
>
>     return TS_LUA_REMAP_DID_REMAP
>
> end
>
> No extra info with debug tag ts_lua enabled, as this seems to be failing
> to parse the remap config itself.
>
>
> Thanks
>
> Adi
>
> On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com> wrote:
>
>> verify your remap rules and/or lua scripts to ensure they are
>> syntactically correct.
>>
>> also enable debug.. .may provide further insight..
>>
>> can you also share your remap file and corresponding lua scripts ?
>>
>>
>>
>>
>> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <
>> adimallikarjunareddy@gmail.com> wrote:
>>
>>> After adding lua plugin with remap rule in remap.config and writing some
>>> sample code mentioned in https://docs.trafficserver.
>>> apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-c
>>> lient-request-set-url-host I see the following error in traffic server.
>>>
>>>
>>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
>>> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>>>
>>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add
>>> rule at line #25; Aborting!
>>>
>>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
>>> Can't create new remap instance for plugin "libtslua.so" -
>>> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>>>
>>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
>>> during BuildTable() -- check your remap plugins!
>>>
>>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
>>> remap table, exiting out!
>>>
>>>
>>> Is there any thing that I am missing out?
>>>
>>>
>>> Thanks
>>>
>>> Adi
>>>
>>>
>>>
>>> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
>>> wrote:
>>>
>>>> No, you don't need lua runtime on your host. Just compile the
>>>> experimental plugin and that's it. More information here -
>>>> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>>>> plugins/ts_lua.en.html
>>>>
>>>> Thanks.
>>>>
>>>> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>>>> <ad...@gmail.com> wrote:
>>>> > For this to work, do I have to install Lua runtime on my host?
>>>> >
>>>> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
>>>> wrote:
>>>> >>
>>>> >> i use the lua plugin to change origin host based on certain
>>>> conditions.
>>>> >>
>>>> >>
>>>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>>>> plugins/ts_lua.en.html#ts-client-request-set-url-host
>>>> >>
>>>> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>>>> >> <ad...@gmail.com> wrote:
>>>> >>>
>>>> >>> any help with this is greatly appreciated. Is there a debug flag to
>>>> check
>>>> >>> header rewrite functionality?
>>>> >>>
>>>> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>>>> >>> <ad...@gmail.com> wrote:
>>>> >>>>
>>>> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
>>>> like
>>>> >>>> this condition is not working
>>>> >>>>
>>>> >>>> cond %{READ_REQUEST_HDR_HOOK}
>>>> >>>>
>>>> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>>>> >>>>
>>>> >>>> set-destination HOST dev103.abc.com [L]
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> and
>>>> >>>>
>>>> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v
>>>> doesnt
>>>> >>>> take to that host specified.
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> Thanks
>>>> >>>>
>>>> >>>> Adi
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>>>> >>>> <su...@yahoo.com> wrote:
>>>> >>>>>
>>>> >>>>> You'd need to specify a preremap request hook (such as Read
>>>> Request
>>>> >>>>> Header) in your rules. I think the default hook is Send Response
>>>> Header.
>>>> >>>>>
>>>> >>>>> - Sudheer
>>>> >>>>>
>>>> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>>>> >>>>> <ad...@gmail.com> wrote:
>>>> >>>>>
>>>> >>>>> Ok, I tried the following one with no luck. The requests are
>>>> always
>>>> >>>>> going to the new host without the customer header value also.
>>>> >>>>>
>>>> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
>>>> >>>>> set-destination HOST dev102.abc.com [L]
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> my remap rule is
>>>> >>>>>
>>>> >>>>> map / http://abc.com/ @pristine_host_hdr=1
>>>> @plugin=header_rewrite.so
>>>> >>>>> @pparam=my_header_rules.conf
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> Am I missing anything important here?
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> Thanks
>>>> >>>>>
>>>> >>>>> Adi
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <
>>>> jp557198@gmail.com>
>>>> >>>>> wrote:
>>>> >>>>>>
>>>> >>>>>> the lua plugin also has this functionality although may be
>>>> somewhat
>>>> >>>>>> overkill for your needs.
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>>>> >>>>>> <ad...@gmail.com> wrote:
>>>> >>>>>>>
>>>> >>>>>>> So to achieve my use case, can I try something like this?
>>>> >>>>>>>
>>>> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
>>>> @pparam=rules1.conf
>>>> >>>>>>>
>>>> >>>>>>> and my rules1.conf has
>>>> >>>>>>>
>>>> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>>>> >>>>>>> set-destination HOST mobile.bar.com [L]
>>>> >>>>>>>
>>>> >>>>>>> This should forward the request to mobile.bar.com if the
>>>> request has
>>>> >>>>>>> 'MY_HEADER' with value 'foo'.
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>> Thanks
>>>> >>>>>>>
>>>> >>>>>>> Adi
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>>>> >>>>>>> <br...@gmail.com> wrote:
>>>> >>>>>>>>
>>>> >>>>>>>> Sorry I think I meant header_rewrite.
>>>> >>>>>>>>
>>>> >>>>>>>> Brian
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <
>>>> briangeffon@gmail.com>
>>>> >>>>>>>> wrote:
>>>> >>>>>>>>>
>>>> >>>>>>>>> There is a regex_remap plugin that is what you would want,
>>>> take a
>>>> >>>>>>>>> look in plugins/
>>>> >>>>>>>>>
>>>> >>>>>>>>> Brian
>>>> >>>>>>>>>
>>>> >>>>>>>>>
>>>> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>>>> >>>>>>>>> <ad...@gmail.com> wrote:
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> Is there a config that allows to change remap rule based on
>>>> the
>>>> >>>>>>>>>> incoming header?
>>>> >>>>>>>>>>
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> My use case is , if I send a custom header in the request,
>>>> the
>>>> >>>>>>>>>> remap rule should be changed to different one than the
>>>> default one
>>>> >>>>>>>>>> configured.
>>>> >>>>>>>>>>
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> Thanks
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> Adi
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>
>>>> >>>>>
>>>> >>>>
>>>> >>>
>>>> >>
>>>> >
>>>>
>>>
>>>
>>
>

Re: remap rules based on request header

Posted by Shu Kit Chan <ch...@gmail.com>.
Worked with Adi offline.
Basically we just need to specify the exact location of the lua
script. And it loaded now.

Thanks.

Kit

On Tue, May 9, 2017 at 10:19 AM, Adi Mallikarjuna Reddy V
<ad...@gmail.com> wrote:
> 1) Which ats version you are using? - 5.3.x
> 2) How do you compile/get libtslua.so ? - internal build from experimental
> plugins
> 3) anything in error.log ? - nothing other than the one posted
>
> On Mon, May 8, 2017 at 12:22 PM, Shu Kit Chan <ch...@gmail.com> wrote:
>>
>> A few questions
>>
>> 1) Which ats version you are using?
>> 2) How do you compile/get libtslua.so ?
>> 3) anything in error.log ?
>>
>> Thanks.
>>
>>
>> On Mon, May 8, 2017 at 9:37 AM, Adi Mallikarjuna Reddy V
>> <ad...@gmail.com> wrote:
>> > its libtslua.so, we built it as this.
>> >
>> > didnt work after removing @pristine_host_hdr=1 and enabling the same
>> > through
>> > lua script.
>> >
>> >
>> > I see the same error after above change. Looks like something to do with
>> > initialization of plugin.
>> >
>> > Thanks
>> > Adi
>> >
>> > On Mon, May 8, 2017 at 9:25 AM, Chou, Peter <pb...@labs.att.com> wrote:
>> >>
>> >> Can you confirm under $PREFIX/libexec whether your so is libtslua.so or
>> >> just tslua.so?
>> >>
>> >>
>> >>
>> >> From: Adi Mallikarjuna Reddy V [mailto:adimallikarjunareddy@gmail.com]
>> >> Sent: Monday, May 08, 2017 9:19 AM
>> >> To: users@trafficserver.apache.org
>> >> Subject: Re: remap rules based on request header
>> >>
>> >>
>> >>
>> >> remap rule
>> >>
>> >>
>> >>
>> >> map /random_path http://dummy_destination.com/ @pristine_host_hdr=1
>> >> @plugin=libtslua.so @pparam=lua_remap.lua
>> >>
>> >>
>> >>
>> >> script - lua_remap.lua
>> >>
>> >>
>> >>
>> >> function do_remap()
>> >>
>> >>     ts.client_request.set_url_host('actual_destination.com')
>> >>
>> >>     ts.client_request.set_url_port(80)
>> >>
>> >>     ts.client_request.set_url_scheme('http')
>> >>
>> >>     return TS_LUA_REMAP_DID_REMAP
>> >>
>> >> end
>> >>
>> >> No extra info with debug tag ts_lua enabled, as this seems to be
>> >> failing
>> >> to parse the remap config itself.
>> >>
>> >>
>> >>
>> >> Thanks
>> >>
>> >> Adi
>> >>
>> >>
>> >>
>> >> On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com>
>> >> wrote:
>> >>
>> >> verify your remap rules and/or lua scripts to ensure they are
>> >> syntactically correct.
>> >>
>> >>
>> >>
>> >> also enable debug.. .may provide further insight..
>> >>
>> >>
>> >>
>> >> can you also share your remap file and corresponding lua scripts ?
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V
>> >> <ad...@gmail.com> wrote:
>> >>
>> >> After adding lua plugin with remap rule in remap.config and writing
>> >> some
>> >> sample code mentioned in
>> >>
>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
>> >> I see the following error in traffic server.
>> >>
>> >>
>> >>
>> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
>> >> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>> >>
>> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add
>> >> rule
>> >> at line #25; Aborting!
>> >>
>> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
>> >> Can't create new remap instance for plugin "libtslua.so" -
>> >> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>> >>
>> >> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
>> >> during BuildTable() -- check your remap plugins!
>> >>
>> >> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
>> >> remap table, exiting out!
>> >>
>> >>
>> >>
>> >> Is there any thing that I am missing out?
>> >>
>> >>
>> >>
>> >> Thanks
>> >>
>> >> Adi
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
>> >> wrote:
>> >>
>> >> No, you don't need lua runtime on your host. Just compile the
>> >> experimental plugin and that's it. More information here -
>> >>
>> >>
>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html
>> >>
>> >> Thanks.
>> >>
>> >> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>> >>
>> >> <ad...@gmail.com> wrote:
>> >> > For this to work, do I have to install Lua runtime on my host?
>> >> >
>> >> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> i use the lua plugin to change origin host based on certain
>> >> >> conditions.
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
>> >> >>
>> >> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>> >> >> <ad...@gmail.com> wrote:
>> >> >>>
>> >> >>> any help with this is greatly appreciated. Is there a debug flag to
>> >> >>> check
>> >> >>> header rewrite functionality?
>> >> >>>
>> >> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>> >> >>> <ad...@gmail.com> wrote:
>> >> >>>>
>> >> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
>> >> >>>> like
>> >> >>>> this condition is not working
>> >> >>>>
>> >> >>>> cond %{READ_REQUEST_HDR_HOOK}
>> >> >>>>
>> >> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>> >> >>>>
>> >> >>>> set-destination HOST dev103.abc.com [L]
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> and
>> >> >>>>
>> >> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v
>> >> >>>> doesnt
>> >> >>>> take to that host specified.
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> Thanks
>> >> >>>>
>> >> >>>> Adi
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>> >> >>>> <su...@yahoo.com> wrote:
>> >> >>>>>
>> >> >>>>> You'd need to specify a preremap request hook (such as Read
>> >> >>>>> Request
>> >> >>>>> Header) in your rules. I think the default hook is Send Response
>> >> >>>>> Header.
>> >> >>>>>
>> >> >>>>> - Sudheer
>> >> >>>>>
>> >> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>> >> >>>>> <ad...@gmail.com> wrote:
>> >> >>>>>
>> >> >>>>> Ok, I tried the following one with no luck. The requests are
>> >> >>>>> always
>> >> >>>>> going to the new host without the customer header value also.
>> >> >>>>>
>> >> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
>> >> >>>>> set-destination HOST dev102.abc.com [L]
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> my remap rule is
>> >> >>>>>
>> >> >>>>> map / http://abc.com/ @pristine_host_hdr=1
>> >> >>>>> @plugin=header_rewrite.so
>> >> >>>>> @pparam=my_header_rules.conf
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> Am I missing anything important here?
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> Thanks
>> >> >>>>>
>> >> >>>>> Adi
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne
>> >> >>>>> <jp...@gmail.com>
>> >> >>>>> wrote:
>> >> >>>>>>
>> >> >>>>>> the lua plugin also has this functionality although may be
>> >> >>>>>> somewhat
>> >> >>>>>> overkill for your needs.
>> >> >>>>>>
>> >> >>>>>>
>> >> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>> >> >>>>>> <ad...@gmail.com> wrote:
>> >> >>>>>>>
>> >> >>>>>>> So to achieve my use case, can I try something like this?
>> >> >>>>>>>
>> >> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
>> >> >>>>>>> @pparam=rules1.conf
>> >> >>>>>>>
>> >> >>>>>>> and my rules1.conf has
>> >> >>>>>>>
>> >> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>> >> >>>>>>> set-destination HOST mobile.bar.com [L]
>> >> >>>>>>>
>> >> >>>>>>> This should forward the request to mobile.bar.com if the
>> >> >>>>>>> request
>> >> >>>>>>> has
>> >> >>>>>>> 'MY_HEADER' with value 'foo'.
>> >> >>>>>>>
>> >> >>>>>>>
>> >> >>>>>>> Thanks
>> >> >>>>>>>
>> >> >>>>>>> Adi
>> >> >>>>>>>
>> >> >>>>>>>
>> >> >>>>>>>
>> >> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>> >> >>>>>>> <br...@gmail.com> wrote:
>> >> >>>>>>>>
>> >> >>>>>>>> Sorry I think I meant header_rewrite.
>> >> >>>>>>>>
>> >> >>>>>>>> Brian
>> >> >>>>>>>>
>> >> >>>>>>>>
>> >> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon
>> >> >>>>>>>> <br...@gmail.com>
>> >> >>>>>>>> wrote:
>> >> >>>>>>>>>
>> >> >>>>>>>>> There is a regex_remap plugin that is what you would want,
>> >> >>>>>>>>> take
>> >> >>>>>>>>> a
>> >> >>>>>>>>> look in plugins/
>> >> >>>>>>>>>
>> >> >>>>>>>>> Brian
>> >> >>>>>>>>>
>> >> >>>>>>>>>
>> >> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>> >> >>>>>>>>> <ad...@gmail.com> wrote:
>> >> >>>>>>>>>>
>> >> >>>>>>>>>> Is there a config that allows to change remap rule based on
>> >> >>>>>>>>>> the
>> >> >>>>>>>>>> incoming header?
>> >> >>>>>>>>>>
>> >> >>>>>>>>>>
>> >> >>>>>>>>>> My use case is , if I send a custom header in the request,
>> >> >>>>>>>>>> the
>> >> >>>>>>>>>> remap rule should be changed to different one than the
>> >> >>>>>>>>>> default
>> >> >>>>>>>>>> one
>> >> >>>>>>>>>> configured.
>> >> >>>>>>>>>>
>> >> >>>>>>>>>>
>> >> >>>>>>>>>> Thanks
>> >> >>>>>>>>>>
>> >> >>>>>>>>>> Adi
>> >> >>>>>>>
>> >> >>>>>>>
>> >> >>>>>>
>> >> >>>>>
>> >> >>>>
>> >> >>>
>> >> >>
>> >> >
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>
>

Re: remap rules based on request header

Posted by Adi Mallikarjuna Reddy V <ad...@gmail.com>.
1) Which ats version you are using? - 5.3.x
2) How do you compile/get libtslua.so ? - internal build from experimental
plugins
3) anything in error.log ? - nothing other than the one posted

On Mon, May 8, 2017 at 12:22 PM, Shu Kit Chan <ch...@gmail.com> wrote:

> A few questions
>
> 1) Which ats version you are using?
> 2) How do you compile/get libtslua.so ?
> 3) anything in error.log ?
>
> Thanks.
>
>
> On Mon, May 8, 2017 at 9:37 AM, Adi Mallikarjuna Reddy V
> <ad...@gmail.com> wrote:
> > its libtslua.so, we built it as this.
> >
> > didnt work after removing @pristine_host_hdr=1 and enabling the same
> through
> > lua script.
> >
> >
> > I see the same error after above change. Looks like something to do with
> > initialization of plugin.
> >
> > Thanks
> > Adi
> >
> > On Mon, May 8, 2017 at 9:25 AM, Chou, Peter <pb...@labs.att.com> wrote:
> >>
> >> Can you confirm under $PREFIX/libexec whether your so is libtslua.so or
> >> just tslua.so?
> >>
> >>
> >>
> >> From: Adi Mallikarjuna Reddy V [mailto:adimallikarjunareddy@gmail.com]
> >> Sent: Monday, May 08, 2017 9:19 AM
> >> To: users@trafficserver.apache.org
> >> Subject: Re: remap rules based on request header
> >>
> >>
> >>
> >> remap rule
> >>
> >>
> >>
> >> map /random_path http://dummy_destination.com/ @pristine_host_hdr=1
> >> @plugin=libtslua.so @pparam=lua_remap.lua
> >>
> >>
> >>
> >> script - lua_remap.lua
> >>
> >>
> >>
> >> function do_remap()
> >>
> >>     ts.client_request.set_url_host('actual_destination.com')
> >>
> >>     ts.client_request.set_url_port(80)
> >>
> >>     ts.client_request.set_url_scheme('http')
> >>
> >>     return TS_LUA_REMAP_DID_REMAP
> >>
> >> end
> >>
> >> No extra info with debug tag ts_lua enabled, as this seems to be failing
> >> to parse the remap config itself.
> >>
> >>
> >>
> >> Thanks
> >>
> >> Adi
> >>
> >>
> >>
> >> On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com>
> wrote:
> >>
> >> verify your remap rules and/or lua scripts to ensure they are
> >> syntactically correct.
> >>
> >>
> >>
> >> also enable debug.. .may provide further insight..
> >>
> >>
> >>
> >> can you also share your remap file and corresponding lua scripts ?
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V
> >> <ad...@gmail.com> wrote:
> >>
> >> After adding lua plugin with remap rule in remap.config and writing some
> >> sample code mentioned in
> >> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
> >> I see the following error in traffic server.
> >>
> >>
> >>
> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
> >> new instance for plugin libtslua.so (not a TS_SUCCESS return)
> >>
> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add
> rule
> >> at line #25; Aborting!
> >>
> >> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
> >> Can't create new remap instance for plugin "libtslua.so" -
> >> [TSRemapNewInstance] ts_lua_add_module failed at line 25
> >>
> >> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
> >> during BuildTable() -- check your remap plugins!
> >>
> >> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
> >> remap table, exiting out!
> >>
> >>
> >>
> >> Is there any thing that I am missing out?
> >>
> >>
> >>
> >> Thanks
> >>
> >> Adi
> >>
> >>
> >>
> >>
> >>
> >> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
> >> wrote:
> >>
> >> No, you don't need lua runtime on your host. Just compile the
> >> experimental plugin and that's it. More information here -
> >>
> >> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html
> >>
> >> Thanks.
> >>
> >> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
> >>
> >> <ad...@gmail.com> wrote:
> >> > For this to work, do I have to install Lua runtime on my host?
> >> >
> >> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
> >> > wrote:
> >> >>
> >> >> i use the lua plugin to change origin host based on certain
> conditions.
> >> >>
> >> >>
> >> >>
> >> >> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
> >> >>
> >> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
> >> >> <ad...@gmail.com> wrote:
> >> >>>
> >> >>> any help with this is greatly appreciated. Is there a debug flag to
> >> >>> check
> >> >>> header rewrite functionality?
> >> >>>
> >> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
> >> >>> <ad...@gmail.com> wrote:
> >> >>>>
> >> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
> >> >>>> like
> >> >>>> this condition is not working
> >> >>>>
> >> >>>> cond %{READ_REQUEST_HDR_HOOK}
> >> >>>>
> >> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
> >> >>>>
> >> >>>> set-destination HOST dev103.abc.com [L]
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>> and
> >> >>>>
> >> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v
> doesnt
> >> >>>> take to that host specified.
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>> Thanks
> >> >>>>
> >> >>>> Adi
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
> >> >>>> <su...@yahoo.com> wrote:
> >> >>>>>
> >> >>>>> You'd need to specify a preremap request hook (such as Read
> Request
> >> >>>>> Header) in your rules. I think the default hook is Send Response
> >> >>>>> Header.
> >> >>>>>
> >> >>>>> - Sudheer
> >> >>>>>
> >> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
> >> >>>>> <ad...@gmail.com> wrote:
> >> >>>>>
> >> >>>>> Ok, I tried the following one with no luck. The requests are
> always
> >> >>>>> going to the new host without the customer header value also.
> >> >>>>>
> >> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
> >> >>>>> set-destination HOST dev102.abc.com [L]
> >> >>>>>
> >> >>>>>
> >> >>>>> my remap rule is
> >> >>>>>
> >> >>>>> map / http://abc.com/ @pristine_host_hdr=1
> @plugin=header_rewrite.so
> >> >>>>> @pparam=my_header_rules.conf
> >> >>>>>
> >> >>>>>
> >> >>>>> Am I missing anything important here?
> >> >>>>>
> >> >>>>>
> >> >>>>> Thanks
> >> >>>>>
> >> >>>>> Adi
> >> >>>>>
> >> >>>>>
> >> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <
> jp557198@gmail.com>
> >> >>>>> wrote:
> >> >>>>>>
> >> >>>>>> the lua plugin also has this functionality although may be
> somewhat
> >> >>>>>> overkill for your needs.
> >> >>>>>>
> >> >>>>>>
> >> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
> >> >>>>>> <ad...@gmail.com> wrote:
> >> >>>>>>>
> >> >>>>>>> So to achieve my use case, can I try something like this?
> >> >>>>>>>
> >> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
> >> >>>>>>> @pparam=rules1.conf
> >> >>>>>>>
> >> >>>>>>> and my rules1.conf has
> >> >>>>>>>
> >> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
> >> >>>>>>> set-destination HOST mobile.bar.com [L]
> >> >>>>>>>
> >> >>>>>>> This should forward the request to mobile.bar.com if the
> request
> >> >>>>>>> has
> >> >>>>>>> 'MY_HEADER' with value 'foo'.
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>> Thanks
> >> >>>>>>>
> >> >>>>>>> Adi
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
> >> >>>>>>> <br...@gmail.com> wrote:
> >> >>>>>>>>
> >> >>>>>>>> Sorry I think I meant header_rewrite.
> >> >>>>>>>>
> >> >>>>>>>> Brian
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <
> briangeffon@gmail.com>
> >> >>>>>>>> wrote:
> >> >>>>>>>>>
> >> >>>>>>>>> There is a regex_remap plugin that is what you would want,
> take
> >> >>>>>>>>> a
> >> >>>>>>>>> look in plugins/
> >> >>>>>>>>>
> >> >>>>>>>>> Brian
> >> >>>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
> >> >>>>>>>>> <ad...@gmail.com> wrote:
> >> >>>>>>>>>>
> >> >>>>>>>>>> Is there a config that allows to change remap rule based on
> the
> >> >>>>>>>>>> incoming header?
> >> >>>>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>>> My use case is , if I send a custom header in the request,
> the
> >> >>>>>>>>>> remap rule should be changed to different one than the
> default
> >> >>>>>>>>>> one
> >> >>>>>>>>>> configured.
> >> >>>>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>>> Thanks
> >> >>>>>>>>>>
> >> >>>>>>>>>> Adi
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>
> >> >>>>>
> >> >>>>
> >> >>>
> >> >>
> >> >
> >>
> >>
> >>
> >>
> >>
> >>
> >
> >
>

Re: remap rules based on request header

Posted by Shu Kit Chan <ch...@gmail.com>.
A few questions

1) Which ats version you are using?
2) How do you compile/get libtslua.so ?
3) anything in error.log ?

Thanks.


On Mon, May 8, 2017 at 9:37 AM, Adi Mallikarjuna Reddy V
<ad...@gmail.com> wrote:
> its libtslua.so, we built it as this.
>
> didnt work after removing @pristine_host_hdr=1 and enabling the same through
> lua script.
>
>
> I see the same error after above change. Looks like something to do with
> initialization of plugin.
>
> Thanks
> Adi
>
> On Mon, May 8, 2017 at 9:25 AM, Chou, Peter <pb...@labs.att.com> wrote:
>>
>> Can you confirm under $PREFIX/libexec whether your so is libtslua.so or
>> just tslua.so?
>>
>>
>>
>> From: Adi Mallikarjuna Reddy V [mailto:adimallikarjunareddy@gmail.com]
>> Sent: Monday, May 08, 2017 9:19 AM
>> To: users@trafficserver.apache.org
>> Subject: Re: remap rules based on request header
>>
>>
>>
>> remap rule
>>
>>
>>
>> map /random_path http://dummy_destination.com/ @pristine_host_hdr=1
>> @plugin=libtslua.so @pparam=lua_remap.lua
>>
>>
>>
>> script - lua_remap.lua
>>
>>
>>
>> function do_remap()
>>
>>     ts.client_request.set_url_host('actual_destination.com')
>>
>>     ts.client_request.set_url_port(80)
>>
>>     ts.client_request.set_url_scheme('http')
>>
>>     return TS_LUA_REMAP_DID_REMAP
>>
>> end
>>
>> No extra info with debug tag ts_lua enabled, as this seems to be failing
>> to parse the remap config itself.
>>
>>
>>
>> Thanks
>>
>> Adi
>>
>>
>>
>> On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com> wrote:
>>
>> verify your remap rules and/or lua scripts to ensure they are
>> syntactically correct.
>>
>>
>>
>> also enable debug.. .may provide further insight..
>>
>>
>>
>> can you also share your remap file and corresponding lua scripts ?
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V
>> <ad...@gmail.com> wrote:
>>
>> After adding lua plugin with remap rule in remap.config and writing some
>> sample code mentioned in
>> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
>> I see the following error in traffic server.
>>
>>
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
>> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule
>> at line #25; Aborting!
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
>> Can't create new remap instance for plugin "libtslua.so" -
>> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>>
>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
>> during BuildTable() -- check your remap plugins!
>>
>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
>> remap table, exiting out!
>>
>>
>>
>> Is there any thing that I am missing out?
>>
>>
>>
>> Thanks
>>
>> Adi
>>
>>
>>
>>
>>
>> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
>> wrote:
>>
>> No, you don't need lua runtime on your host. Just compile the
>> experimental plugin and that's it. More information here -
>>
>> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html
>>
>> Thanks.
>>
>> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>>
>> <ad...@gmail.com> wrote:
>> > For this to work, do I have to install Lua runtime on my host?
>> >
>> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
>> > wrote:
>> >>
>> >> i use the lua plugin to change origin host based on certain conditions.
>> >>
>> >>
>> >>
>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
>> >>
>> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>> >> <ad...@gmail.com> wrote:
>> >>>
>> >>> any help with this is greatly appreciated. Is there a debug flag to
>> >>> check
>> >>> header rewrite functionality?
>> >>>
>> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>> >>> <ad...@gmail.com> wrote:
>> >>>>
>> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
>> >>>> like
>> >>>> this condition is not working
>> >>>>
>> >>>> cond %{READ_REQUEST_HDR_HOOK}
>> >>>>
>> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>> >>>>
>> >>>> set-destination HOST dev103.abc.com [L]
>> >>>>
>> >>>>
>> >>>>
>> >>>> and
>> >>>>
>> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v doesnt
>> >>>> take to that host specified.
>> >>>>
>> >>>>
>> >>>>
>> >>>> Thanks
>> >>>>
>> >>>> Adi
>> >>>>
>> >>>>
>> >>>>
>> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>> >>>> <su...@yahoo.com> wrote:
>> >>>>>
>> >>>>> You'd need to specify a preremap request hook (such as Read Request
>> >>>>> Header) in your rules. I think the default hook is Send Response
>> >>>>> Header.
>> >>>>>
>> >>>>> - Sudheer
>> >>>>>
>> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>> >>>>> <ad...@gmail.com> wrote:
>> >>>>>
>> >>>>> Ok, I tried the following one with no luck. The requests are always
>> >>>>> going to the new host without the customer header value also.
>> >>>>>
>> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
>> >>>>> set-destination HOST dev102.abc.com [L]
>> >>>>>
>> >>>>>
>> >>>>> my remap rule is
>> >>>>>
>> >>>>> map / http://abc.com/ @pristine_host_hdr=1 @plugin=header_rewrite.so
>> >>>>> @pparam=my_header_rules.conf
>> >>>>>
>> >>>>>
>> >>>>> Am I missing anything important here?
>> >>>>>
>> >>>>>
>> >>>>> Thanks
>> >>>>>
>> >>>>> Adi
>> >>>>>
>> >>>>>
>> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp...@gmail.com>
>> >>>>> wrote:
>> >>>>>>
>> >>>>>> the lua plugin also has this functionality although may be somewhat
>> >>>>>> overkill for your needs.
>> >>>>>>
>> >>>>>>
>> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>> >>>>>> <ad...@gmail.com> wrote:
>> >>>>>>>
>> >>>>>>> So to achieve my use case, can I try something like this?
>> >>>>>>>
>> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
>> >>>>>>> @pparam=rules1.conf
>> >>>>>>>
>> >>>>>>> and my rules1.conf has
>> >>>>>>>
>> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>> >>>>>>> set-destination HOST mobile.bar.com [L]
>> >>>>>>>
>> >>>>>>> This should forward the request to mobile.bar.com if the request
>> >>>>>>> has
>> >>>>>>> 'MY_HEADER' with value 'foo'.
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> Thanks
>> >>>>>>>
>> >>>>>>> Adi
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>> >>>>>>> <br...@gmail.com> wrote:
>> >>>>>>>>
>> >>>>>>>> Sorry I think I meant header_rewrite.
>> >>>>>>>>
>> >>>>>>>> Brian
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <br...@gmail.com>
>> >>>>>>>> wrote:
>> >>>>>>>>>
>> >>>>>>>>> There is a regex_remap plugin that is what you would want, take
>> >>>>>>>>> a
>> >>>>>>>>> look in plugins/
>> >>>>>>>>>
>> >>>>>>>>> Brian
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>> >>>>>>>>> <ad...@gmail.com> wrote:
>> >>>>>>>>>>
>> >>>>>>>>>> Is there a config that allows to change remap rule based on the
>> >>>>>>>>>> incoming header?
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>> My use case is , if I send a custom header in the request, the
>> >>>>>>>>>> remap rule should be changed to different one than the default
>> >>>>>>>>>> one
>> >>>>>>>>>> configured.
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>> Thanks
>> >>>>>>>>>>
>> >>>>>>>>>> Adi
>> >>>>>>>
>> >>>>>>>
>> >>>>>>
>> >>>>>
>> >>>>
>> >>>
>> >>
>> >
>>
>>
>>
>>
>>
>>
>
>

Re: remap rules based on request header

Posted by Adi Mallikarjuna Reddy V <ad...@gmail.com>.
its libtslua.so, we built it as this.

didnt work after removing @pristine_host_hdr=1 and enabling the same
through lua script.


I see the same error after above change. Looks like something to do with
initialization of plugin.

Thanks
Adi

On Mon, May 8, 2017 at 9:25 AM, Chou, Peter <pb...@labs.att.com> wrote:

> Can you confirm under $PREFIX/libexec whether your so is libtslua.so or
> just tslua.so?
>
>
>
> *From:* Adi Mallikarjuna Reddy V [mailto:adimallikarjunareddy@gmail.com]
> *Sent:* Monday, May 08, 2017 9:19 AM
> *To:* users@trafficserver.apache.org
> *Subject:* Re: remap rules based on request header
>
>
>
> remap rule
>
>
>
> map /random_path http://dummy_destination.com/
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__dummy-5Fdestination.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=K0oZsi1uAx2GmQgJekzD1loEWHi9IblIQHkAeo6Gv6s&e=>
> @pristine_host_hdr=1 @plugin=libtslua.so @pparam=lua_remap.lua
>
>
>
> script - lua_remap.lua
>
>
>
> function do_remap()
>
>     ts.client_request.set_url_host('actual_destination.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fdestination.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=gMVKB-qIrbHaJpgahMg0b5Ci-6fcR9PjVjN7NDDmO5A&e=>
> ')
>
>     ts.client_request.set_url_port(80)
>
>     ts.client_request.set_url_scheme('http')
>
>     return TS_LUA_REMAP_DID_REMAP
>
> end
>
> No extra info with debug tag ts_lua enabled, as this seems to be failing
> to parse the remap config itself.
>
>
>
> Thanks
>
> Adi
>
>
>
> On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com> wrote:
>
> verify your remap rules and/or lua scripts to ensure they are
> syntactically correct.
>
>
>
> also enable debug.. .may provide further insight..
>
>
>
> can you also share your remap file and corresponding lua scripts ?
>
>
>
>
>
>
>
>
>
> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <
> adimallikarjunareddy@gmail.com> wrote:
>
> After adding lua plugin with remap rule in remap.config and writing some
> sample code mentioned in https://docs.trafficserver.
> apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#
> ts-client-request-set-url-host
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=>
> I see the following error in traffic server.
>
>
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule
> at line #25; Aborting!
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
> Can't create new remap instance for plugin "libtslua.so" -
> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>
> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
> during BuildTable() -- check your remap plugins!
>
> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
> remap table, exiting out!
>
>
>
> Is there any thing that I am missing out?
>
>
>
> Thanks
>
> Adi
>
>
>
>
>
> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
> wrote:
>
> No, you don't need lua runtime on your host. Just compile the
> experimental plugin and that's it. More information here -
> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=Ywi_5Wywe1DE2z7TyH8_M3sGgN6FdF6QUj5F7iQeEzQ&e=>
>
> Thanks.
>
> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>
> <ad...@gmail.com> wrote:
> > For this to work, do I have to install Lua runtime on my host?
> >
> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
> wrote:
> >>
> >> i use the lua plugin to change origin host based on certain conditions.
> >>
> >>
> >> https://docs.trafficserver.apache.org/en/latest/admin-
> guide/plugins/ts_lua.en.html#ts-client-request-set-url-host
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=>
> >>
> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
> >> <ad...@gmail.com> wrote:
> >>>
> >>> any help with this is greatly appreciated. Is there a debug flag to
> check
> >>> header rewrite functionality?
> >>>
> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
> >>> <ad...@gmail.com> wrote:
> >>>>
> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
> like
> >>>> this condition is not working
> >>>>
> >>>> cond %{READ_REQUEST_HDR_HOOK}
> >>>>
> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
> >>>>
> >>>> set-destination HOST dev103.abc.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__dev103.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=I-TXLn8hvUXSYc1jKRX6HA1RGKmTFotYZSH81xpjOKs&e=>
> [L]
> >>>>
> >>>>
> >>>>
> >>>> and
> >>>>
> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fats-5Fendpoint_path&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=FmYuLf6S_I1Eje2wF_gUJ09JKNmytmiMoqQa5sqjAks&e=>'
> -v doesnt
> >>>> take to that host specified.
> >>>>
> >>>>
> >>>>
> >>>> Thanks
> >>>>
> >>>> Adi
> >>>>
> >>>>
> >>>>
> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
> >>>> <su...@yahoo.com> wrote:
> >>>>>
> >>>>> You'd need to specify a preremap request hook (such as Read Request
> >>>>> Header) in your rules. I think the default hook is Send Response
> Header.
> >>>>>
> >>>>> - Sudheer
> >>>>>
> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
> >>>>> <ad...@gmail.com> wrote:
> >>>>>
> >>>>> Ok, I tried the following one with no luck. The requests are always
> >>>>> going to the new host without the customer header value also.
> >>>>>
> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
> >>>>> set-destination HOST dev102.abc.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__dev102.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=_-vUOl7-IUQBxSWpCWQRHfgKTlkynDj4gS2EITb03PM&e=>
> [L]
> >>>>>
> >>>>>
> >>>>> my remap rule is
> >>>>>
> >>>>> map / http://abc.com/
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__abc.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=kAUkZaOQFdrh7vBl9ZGp01US3UqVCgC2OZClw87297A&e=>
> @pristine_host_hdr=1 @plugin=header_rewrite.so
> >>>>> @pparam=my_header_rules.conf
> >>>>>
> >>>>>
> >>>>> Am I missing anything important here?
> >>>>>
> >>>>>
> >>>>> Thanks
> >>>>>
> >>>>> Adi
> >>>>>
> >>>>>
> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp...@gmail.com>
> >>>>> wrote:
> >>>>>>
> >>>>>> the lua plugin also has this functionality although may be somewhat
> >>>>>> overkill for your needs.
> >>>>>>
> >>>>>>
> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
> >>>>>> <ad...@gmail.com> wrote:
> >>>>>>>
> >>>>>>> So to achieve my use case, can I try something like this?
> >>>>>>>
> >>>>>>> map / http://b.bar.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__b.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=ZmTeA-9TpDYjBZY8D5ZbIH7C0B8ARJQEGlVNQtwrM2E&e=>
> @plugin=header_rewrite.so @pparam=rules1.conf
> >>>>>>>
> >>>>>>> and my rules1.conf has
> >>>>>>>
> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
> >>>>>>> set-destination HOST mobile.bar.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=>
> [L]
> >>>>>>>
> >>>>>>> This should forward the request to mobile.bar.com
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=>
> if the request has
> >>>>>>> 'MY_HEADER' with value 'foo'.
> >>>>>>>
> >>>>>>>
> >>>>>>> Thanks
> >>>>>>>
> >>>>>>> Adi
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
> >>>>>>> <br...@gmail.com> wrote:
> >>>>>>>>
> >>>>>>>> Sorry I think I meant header_rewrite.
> >>>>>>>>
> >>>>>>>> Brian
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <br...@gmail.com>
> >>>>>>>> wrote:
> >>>>>>>>>
> >>>>>>>>> There is a regex_remap plugin that is what you would want, take a
> >>>>>>>>> look in plugins/
> >>>>>>>>>
> >>>>>>>>> Brian
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
> >>>>>>>>> <ad...@gmail.com> wrote:
> >>>>>>>>>>
> >>>>>>>>>> Is there a config that allows to change remap rule based on the
> >>>>>>>>>> incoming header?
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> My use case is , if I send a custom header in the request, the
> >>>>>>>>>> remap rule should be changed to different one than the default
> one
> >>>>>>>>>> configured.
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Thanks
> >>>>>>>>>>
> >>>>>>>>>> Adi
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >
>
>
>
>
>
>
>

RE: remap rules based on request header

Posted by "Chou, Peter" <pb...@labs.att.com>.
Can you confirm under $PREFIX/libexec whether your so is libtslua.so or just tslua.so?

From: Adi Mallikarjuna Reddy V [mailto:adimallikarjunareddy@gmail.com]
Sent: Monday, May 08, 2017 9:19 AM
To: users@trafficserver.apache.org
Subject: Re: remap rules based on request header

remap rule


map /random_path http://dummy_destination.com/<https://urldefense.proofpoint.com/v2/url?u=http-3A__dummy-5Fdestination.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=K0oZsi1uAx2GmQgJekzD1loEWHi9IblIQHkAeo6Gv6s&e=> @pristine_host_hdr=1 @plugin=libtslua.so @pparam=lua_remap.lua



script - lua_remap.lua



function do_remap()

    ts.client_request.set_url_host('actual_destination.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fdestination.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=gMVKB-qIrbHaJpgahMg0b5Ci-6fcR9PjVjN7NDDmO5A&e=>')

    ts.client_request.set_url_port(80)

    ts.client_request.set_url_scheme('http')

    return TS_LUA_REMAP_DID_REMAP

end

No extra info with debug tag ts_lua enabled, as this seems to be failing to parse the remap config itself.



Thanks

Adi

On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com>> wrote:
verify your remap rules and/or lua scripts to ensure they are syntactically correct.

also enable debug.. .may provide further insight..

can you also share your remap file and corresponding lua scripts ?




On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <ad...@gmail.com>> wrote:

After adding lua plugin with remap rule in remap.config and writing some sample code mentioned in https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=> I see the following error in traffic server.



[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create new instance for plugin libtslua.so (not a TS_SUCCESS return)

[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule at line #25; Aborting!

[May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy] Can't create new remap instance for plugin "libtslua.so" - [TSRemapNewInstance] ts_lua_add_module failed at line 25

[May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed during BuildTable() -- check your remap plugins!

[May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the remap table, exiting out!



Is there any thing that I am missing out?



Thanks

Adi



On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>> wrote:
No, you don't need lua runtime on your host. Just compile the
experimental plugin and that's it. More information here -
https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=Ywi_5Wywe1DE2z7TyH8_M3sGgN6FdF6QUj5F7iQeEzQ&e=>

Thanks.

On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
<ad...@gmail.com>> wrote:
> For this to work, do I have to install Lua runtime on my host?
>
> On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>> wrote:
>>
>> i use the lua plugin to change origin host based on certain conditions.
>>
>>
>> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=>
>>
>> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>> <ad...@gmail.com>> wrote:
>>>
>>> any help with this is greatly appreciated. Is there a debug flag to check
>>> header rewrite functionality?
>>>
>>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>>> <ad...@gmail.com>> wrote:
>>>>
>>>> Thanks Sudheer for the pointer. I tried the following and it looks like
>>>> this condition is not working
>>>>
>>>> cond %{READ_REQUEST_HDR_HOOK}
>>>>
>>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>>>>
>>>> set-destination HOST dev103.abc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__dev103.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=I-TXLn8hvUXSYc1jKRX6HA1RGKmTFotYZSH81xpjOKs&e=> [L]
>>>>
>>>>
>>>>
>>>> and
>>>>
>>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path<https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fats-5Fendpoint_path&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=FmYuLf6S_I1Eje2wF_gUJ09JKNmytmiMoqQa5sqjAks&e=>' -v doesnt
>>>> take to that host specified.
>>>>
>>>>
>>>>
>>>> Thanks
>>>>
>>>> Adi
>>>>
>>>>
>>>>
>>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>>>> <su...@yahoo.com>> wrote:
>>>>>
>>>>> You'd need to specify a preremap request hook (such as Read Request
>>>>> Header) in your rules. I think the default hook is Send Response Header.
>>>>>
>>>>> - Sudheer
>>>>>
>>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>>>>> <ad...@gmail.com>> wrote:
>>>>>
>>>>> Ok, I tried the following one with no luck. The requests are always
>>>>> going to the new host without the customer header value also.
>>>>>
>>>>> cond %{HEADER:DEV_HOST} = "dev102"
>>>>> set-destination HOST dev102.abc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__dev102.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=_-vUOl7-IUQBxSWpCWQRHfgKTlkynDj4gS2EITb03PM&e=> [L]
>>>>>
>>>>>
>>>>> my remap rule is
>>>>>
>>>>> map / http://abc.com/<https://urldefense.proofpoint.com/v2/url?u=http-3A__abc.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=kAUkZaOQFdrh7vBl9ZGp01US3UqVCgC2OZClw87297A&e=> @pristine_host_hdr=1 @plugin=header_rewrite.so
>>>>> @pparam=my_header_rules.conf
>>>>>
>>>>>
>>>>> Am I missing anything important here?
>>>>>
>>>>>
>>>>> Thanks
>>>>>
>>>>> Adi
>>>>>
>>>>>
>>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp...@gmail.com>>
>>>>> wrote:
>>>>>>
>>>>>> the lua plugin also has this functionality although may be somewhat
>>>>>> overkill for your needs.
>>>>>>
>>>>>>
>>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>>>>>> <ad...@gmail.com>> wrote:
>>>>>>>
>>>>>>> So to achieve my use case, can I try something like this?
>>>>>>>
>>>>>>> map / http://b.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__b.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=ZmTeA-9TpDYjBZY8D5ZbIH7C0B8ARJQEGlVNQtwrM2E&e=> @plugin=header_rewrite.so @pparam=rules1.conf
>>>>>>>
>>>>>>> and my rules1.conf has
>>>>>>>
>>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>>>>>>> set-destination HOST mobile.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=> [L]
>>>>>>>
>>>>>>> This should forward the request to mobile.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=> if the request has
>>>>>>> 'MY_HEADER' with value 'foo'.
>>>>>>>
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>> Adi
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>>>>>>> <br...@gmail.com>> wrote:
>>>>>>>>
>>>>>>>> Sorry I think I meant header_rewrite.
>>>>>>>>
>>>>>>>> Brian
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <br...@gmail.com>>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> There is a regex_remap plugin that is what you would want, take a
>>>>>>>>> look in plugins/
>>>>>>>>>
>>>>>>>>> Brian
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>>>>>>>>> <ad...@gmail.com>> wrote:
>>>>>>>>>>
>>>>>>>>>> Is there a config that allows to change remap rule based on the
>>>>>>>>>> incoming header?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> My use case is , if I send a custom header in the request, the
>>>>>>>>>> remap rule should be changed to different one than the default one
>>>>>>>>>> configured.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>>
>>>>>>>>>> Adi
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>




Re: remap rules based on request header

Posted by Adi Mallikarjuna Reddy V <ad...@gmail.com>.
remap rule

map /random_path http://dummy_destination.com/ @pristine_host_hdr=1
@plugin=libtslua.so @pparam=lua_remap.lua


script - lua_remap.lua


function do_remap()

    ts.client_request.set_url_host('actual_destination.com')

    ts.client_request.set_url_port(80)

    ts.client_request.set_url_scheme('http')

    return TS_LUA_REMAP_DID_REMAP

end

No extra info with debug tag ts_lua enabled, as this seems to be failing to
parse the remap config itself.


Thanks

Adi

On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <jp...@gmail.com> wrote:

> verify your remap rules and/or lua scripts to ensure they are
> syntactically correct.
>
> also enable debug.. .may provide further insight..
>
> can you also share your remap file and corresponding lua scripts ?
>
>
>
>
> On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <
> adimallikarjunareddy@gmail.com> wrote:
>
>> After adding lua plugin with remap rule in remap.config and writing some
>> sample code mentioned in https://docs.trafficserver.
>> apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-
>> client-request-set-url-host I see the following error in traffic server.
>>
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
>> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule
>> at line #25; Aborting!
>>
>> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
>> Can't create new remap instance for plugin "libtslua.so" -
>> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>>
>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
>> during BuildTable() -- check your remap plugins!
>>
>> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
>> remap table, exiting out!
>>
>>
>> Is there any thing that I am missing out?
>>
>>
>> Thanks
>>
>> Adi
>>
>>
>>
>> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
>> wrote:
>>
>>> No, you don't need lua runtime on your host. Just compile the
>>> experimental plugin and that's it. More information here -
>>> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>>> plugins/ts_lua.en.html
>>>
>>> Thanks.
>>>
>>> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>>> <ad...@gmail.com> wrote:
>>> > For this to work, do I have to install Lua runtime on my host?
>>> >
>>> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
>>> wrote:
>>> >>
>>> >> i use the lua plugin to change origin host based on certain
>>> conditions.
>>> >>
>>> >>
>>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>>> plugins/ts_lua.en.html#ts-client-request-set-url-host
>>> >>
>>> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>>> >> <ad...@gmail.com> wrote:
>>> >>>
>>> >>> any help with this is greatly appreciated. Is there a debug flag to
>>> check
>>> >>> header rewrite functionality?
>>> >>>
>>> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>>> >>> <ad...@gmail.com> wrote:
>>> >>>>
>>> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
>>> like
>>> >>>> this condition is not working
>>> >>>>
>>> >>>> cond %{READ_REQUEST_HDR_HOOK}
>>> >>>>
>>> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>>> >>>>
>>> >>>> set-destination HOST dev103.abc.com [L]
>>> >>>>
>>> >>>>
>>> >>>>
>>> >>>> and
>>> >>>>
>>> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v
>>> doesnt
>>> >>>> take to that host specified.
>>> >>>>
>>> >>>>
>>> >>>>
>>> >>>> Thanks
>>> >>>>
>>> >>>> Adi
>>> >>>>
>>> >>>>
>>> >>>>
>>> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>>> >>>> <su...@yahoo.com> wrote:
>>> >>>>>
>>> >>>>> You'd need to specify a preremap request hook (such as Read Request
>>> >>>>> Header) in your rules. I think the default hook is Send Response
>>> Header.
>>> >>>>>
>>> >>>>> - Sudheer
>>> >>>>>
>>> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>>> >>>>> <ad...@gmail.com> wrote:
>>> >>>>>
>>> >>>>> Ok, I tried the following one with no luck. The requests are always
>>> >>>>> going to the new host without the customer header value also.
>>> >>>>>
>>> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
>>> >>>>> set-destination HOST dev102.abc.com [L]
>>> >>>>>
>>> >>>>>
>>> >>>>> my remap rule is
>>> >>>>>
>>> >>>>> map / http://abc.com/ @pristine_host_hdr=1
>>> @plugin=header_rewrite.so
>>> >>>>> @pparam=my_header_rules.conf
>>> >>>>>
>>> >>>>>
>>> >>>>> Am I missing anything important here?
>>> >>>>>
>>> >>>>>
>>> >>>>> Thanks
>>> >>>>>
>>> >>>>> Adi
>>> >>>>>
>>> >>>>>
>>> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp557198@gmail.com
>>> >
>>> >>>>> wrote:
>>> >>>>>>
>>> >>>>>> the lua plugin also has this functionality although may be
>>> somewhat
>>> >>>>>> overkill for your needs.
>>> >>>>>>
>>> >>>>>>
>>> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>>> >>>>>> <ad...@gmail.com> wrote:
>>> >>>>>>>
>>> >>>>>>> So to achieve my use case, can I try something like this?
>>> >>>>>>>
>>> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
>>> @pparam=rules1.conf
>>> >>>>>>>
>>> >>>>>>> and my rules1.conf has
>>> >>>>>>>
>>> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>>> >>>>>>> set-destination HOST mobile.bar.com [L]
>>> >>>>>>>
>>> >>>>>>> This should forward the request to mobile.bar.com if the
>>> request has
>>> >>>>>>> 'MY_HEADER' with value 'foo'.
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>> Thanks
>>> >>>>>>>
>>> >>>>>>> Adi
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>>> >>>>>>> <br...@gmail.com> wrote:
>>> >>>>>>>>
>>> >>>>>>>> Sorry I think I meant header_rewrite.
>>> >>>>>>>>
>>> >>>>>>>> Brian
>>> >>>>>>>>
>>> >>>>>>>>
>>> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <briangeffon@gmail.com
>>> >
>>> >>>>>>>> wrote:
>>> >>>>>>>>>
>>> >>>>>>>>> There is a regex_remap plugin that is what you would want,
>>> take a
>>> >>>>>>>>> look in plugins/
>>> >>>>>>>>>
>>> >>>>>>>>> Brian
>>> >>>>>>>>>
>>> >>>>>>>>>
>>> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>>> >>>>>>>>> <ad...@gmail.com> wrote:
>>> >>>>>>>>>>
>>> >>>>>>>>>> Is there a config that allows to change remap rule based on
>>> the
>>> >>>>>>>>>> incoming header?
>>> >>>>>>>>>>
>>> >>>>>>>>>>
>>> >>>>>>>>>> My use case is , if I send a custom header in the request, the
>>> >>>>>>>>>> remap rule should be changed to different one than the
>>> default one
>>> >>>>>>>>>> configured.
>>> >>>>>>>>>>
>>> >>>>>>>>>>
>>> >>>>>>>>>> Thanks
>>> >>>>>>>>>>
>>> >>>>>>>>>> Adi
>>> >>>>>>>
>>> >>>>>>>
>>> >>>>>>
>>> >>>>>
>>> >>>>
>>> >>>
>>> >>
>>> >
>>>
>>
>>
>

Re: remap rules based on request header

Posted by Jeremy Payne <jp...@gmail.com>.
verify your remap rules and/or lua scripts to ensure they are syntactically
correct.

also enable debug.. .may provide further insight..

can you also share your remap file and corresponding lua scripts ?




On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <
adimallikarjunareddy@gmail.com> wrote:

> After adding lua plugin with remap rule in remap.config and writing some
> sample code mentioned in https://docs.trafficserver.
> apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#
> ts-client-request-set-url-host I see the following error in traffic
> server.
>
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create
> new instance for plugin libtslua.so (not a TS_SUCCESS return)
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule
> at line #25; Aborting!
>
> [May  8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy]
> Can't create new remap instance for plugin "libtslua.so" -
> [TSRemapNewInstance] ts_lua_add_module failed at line 25
>
> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed
> during BuildTable() -- check your remap plugins!
>
> [May  8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the
> remap table, exiting out!
>
>
> Is there any thing that I am missing out?
>
>
> Thanks
>
> Adi
>
>
>
> On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <ch...@gmail.com>
> wrote:
>
>> No, you don't need lua runtime on your host. Just compile the
>> experimental plugin and that's it. More information here -
>> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>> plugins/ts_lua.en.html
>>
>> Thanks.
>>
>> On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V
>> <ad...@gmail.com> wrote:
>> > For this to work, do I have to install Lua runtime on my host?
>> >
>> > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne <jp...@gmail.com>
>> wrote:
>> >>
>> >> i use the lua plugin to change origin host based on certain conditions.
>> >>
>> >>
>> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/
>> plugins/ts_lua.en.html#ts-client-request-set-url-host
>> >>
>> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V
>> >> <ad...@gmail.com> wrote:
>> >>>
>> >>> any help with this is greatly appreciated. Is there a debug flag to
>> check
>> >>> header rewrite functionality?
>> >>>
>> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V
>> >>> <ad...@gmail.com> wrote:
>> >>>>
>> >>>> Thanks Sudheer for the pointer. I tried the following and it looks
>> like
>> >>>> this condition is not working
>> >>>>
>> >>>> cond %{READ_REQUEST_HDR_HOOK}
>> >>>>
>> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103
>> >>>>
>> >>>> set-destination HOST dev103.abc.com [L]
>> >>>>
>> >>>>
>> >>>>
>> >>>> and
>> >>>>
>> >>>> curl -H 'DEVHOST:dev103' 'http://actual_ats_endpoint/path' -v doesnt
>> >>>> take to that host specified.
>> >>>>
>> >>>>
>> >>>>
>> >>>> Thanks
>> >>>>
>> >>>> Adi
>> >>>>
>> >>>>
>> >>>>
>> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda
>> >>>> <su...@yahoo.com> wrote:
>> >>>>>
>> >>>>> You'd need to specify a preremap request hook (such as Read Request
>> >>>>> Header) in your rules. I think the default hook is Send Response
>> Header.
>> >>>>>
>> >>>>> - Sudheer
>> >>>>>
>> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V
>> >>>>> <ad...@gmail.com> wrote:
>> >>>>>
>> >>>>> Ok, I tried the following one with no luck. The requests are always
>> >>>>> going to the new host without the customer header value also.
>> >>>>>
>> >>>>> cond %{HEADER:DEV_HOST} = "dev102"
>> >>>>> set-destination HOST dev102.abc.com [L]
>> >>>>>
>> >>>>>
>> >>>>> my remap rule is
>> >>>>>
>> >>>>> map / http://abc.com/ @pristine_host_hdr=1
>> @plugin=header_rewrite.so
>> >>>>> @pparam=my_header_rules.conf
>> >>>>>
>> >>>>>
>> >>>>> Am I missing anything important here?
>> >>>>>
>> >>>>>
>> >>>>> Thanks
>> >>>>>
>> >>>>> Adi
>> >>>>>
>> >>>>>
>> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne <jp...@gmail.com>
>> >>>>> wrote:
>> >>>>>>
>> >>>>>> the lua plugin also has this functionality although may be somewhat
>> >>>>>> overkill for your needs.
>> >>>>>>
>> >>>>>>
>> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V
>> >>>>>> <ad...@gmail.com> wrote:
>> >>>>>>>
>> >>>>>>> So to achieve my use case, can I try something like this?
>> >>>>>>>
>> >>>>>>> map / http://b.bar.com @plugin=header_rewrite.so
>> @pparam=rules1.conf
>> >>>>>>>
>> >>>>>>> and my rules1.conf has
>> >>>>>>>
>> >>>>>>> cond %{HEADER:MY_HEADER} = "foo"
>> >>>>>>> set-destination HOST mobile.bar.com [L]
>> >>>>>>>
>> >>>>>>> This should forward the request to mobile.bar.com if the request
>> has
>> >>>>>>> 'MY_HEADER' with value 'foo'.
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> Thanks
>> >>>>>>>
>> >>>>>>> Adi
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon
>> >>>>>>> <br...@gmail.com> wrote:
>> >>>>>>>>
>> >>>>>>>> Sorry I think I meant header_rewrite.
>> >>>>>>>>
>> >>>>>>>> Brian
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon <br...@gmail.com>
>> >>>>>>>> wrote:
>> >>>>>>>>>
>> >>>>>>>>> There is a regex_remap plugin that is what you would want, take
>> a
>> >>>>>>>>> look in plugins/
>> >>>>>>>>>
>> >>>>>>>>> Brian
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V
>> >>>>>>>>> <ad...@gmail.com> wrote:
>> >>>>>>>>>>
>> >>>>>>>>>> Is there a config that allows to change remap rule based on the
>> >>>>>>>>>> incoming header?
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>> My use case is , if I send a custom header in the request, the
>> >>>>>>>>>> remap rule should be changed to different one than the default
>> one
>> >>>>>>>>>> configured.
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>> Thanks
>> >>>>>>>>>>
>> >>>>>>>>>> Adi
>> >>>>>>>
>> >>>>>>>
>> >>>>>>
>> >>>>>
>> >>>>
>> >>>
>> >>
>> >
>>
>
>