Yeah, I think that should be fine.

Thanks!

On Thu, Feb 27, 2020 at 9:42 AM Leif Hedstrom <[email protected]> wrote:

>
>
> > On Feb 27, 2020, at 10:37 AM, David Calavera <[email protected]>
> wrote:
> >
> > Why can’t it just be a plain remap plugin ?
> >
> > That's a good question, maybe we just overlooked the obvious solution.
> If I understand what you're suggesting is to change the
> TSRemapRequestInfo->requestUrl with the new server url and call it a day.
> That might work, I don't think we care much about the cache key.
>
>
> Right. Like what the regex_remap plugin essentially does:
>
>           if (TS_PARSE_ERROR == TSUrlParse(rri->requestBufp,
> rri->requestUrl, &start, start + dest_len)) {
>             TSHttpTxnStatusSet(txnp, TS_HTTP_STATUS_INTERNAL_SERVER_ERROR);
>             TSError("[%s] can't parse substituted URL string",
> PLUGIN_NAME);
>           }
>
>
> Or any other appropriate APIs to modify the rri->requestUrl.
>
> Cheers,
>
> — Leif
>
>
> >
> > On Thu, Feb 27, 2020 at 9:25 AM Leif Hedstrom <[email protected]> wrote:
> >
> >
> > > On Feb 27, 2020, at 10:18 AM, David Calavera <[email protected]>
> wrote:
> > >
> > > Hi all,
> > >
> > > What's the best practice to change the origin server URL in remap
> plugins?
> > >
> > > We're working on a dynamic plugin that can proxy certain requests to a
> third party service and we're not sure what's the best solution.
> > >
> > > Should we add a transaction plugin that changes the server url in the
> TS_HTTP_SEND_REQUEST_HDR_HOOK event? Another option that has crossed our
> mind it to set the cache key to the original url with TSCacheUrlSet, and
> then change the client URL.
> >
> >
> > Why can’t it just be a plain remap plugin ? Is the concern here the
> cache key, and if so, how much are you modifying of the URL? The default
> cache key is the remapped URL (after remap / remap plugins), which is
> usually what you want (but obviously not always).
> >
> > — Leif
> >
> > P.s
> > See e.g. regex_remap plugin, which is just a simple remap plugin.
>
>

Reply via email to