So the scenario we have in mind is as follows.
We have an IFRAME. Said IFRAME wants to point to a resource on https://trees.com
. It might be, for example, https://trees.com/ficus/macrophylla
. However, despite all our requests to trees.com
, they refuse to allow us to link directly to their site, blocking the cross-origin request.
So we decide we want to set up a reverse-proxy. We've heard about nginx and apache but we've got a corporate commitment to Microsoft's technology, for better or worse, so decide in favour of IIS.
Using one of our Azure servers, we create a website, let's call it https://figs.wild.com.au
. We configure the IFRAMEs so that a request to https://trees.com/ficus/macrophylla
actually goes to https://figs.wild.com.au/trees/ficus/macrophylla
.
At this point we go slightly insane.
Is it actually possible for the request https://figs.wild.com.au/trees/ficus/macrophylla
to be converted, on the figs.wild.com.au
server, to a request for https://trees.com/ficus/macrophylla
and for the response to that to be fed back to the originator of the IFRAME request?
We've done a lot of searching and we keep finding things that almost work. What actually does work? Is IIS's Url Rewrite the thing to use, and if so, what should the rule/s look like? Or should we be using some C#-y thing instead?