Can Apigee act as a reverse proxy for a web app?

We're thinking of using Apigee as a reverse proxy for a web app. Would we run into any scalability issues with this approach? All requests to access various pages of the web app would be routed through Apigee. Requests that require authentication will be re-routed to an authentication service by Apigee. Requests that don't require authentication will be forwarded to the correct web app. The web app will be in a VPC that is only accessible by Apigee through a VPN. 

Solved Solved
1 3 144
1 ACCEPTED SOLUTION

Yes, what Chris said. 

There is no ProxyPassReverse in Apigee. You could write one in Apigee, but why would you?  There are systems tat do this better.  nginx, envoy, haproxy, and of course Apache. 

Second, it's expensive to run your webapp calls through Apigee. 

tl;dr Do not use Apigee as a general purpose webapp reverse proxy. 

View solution in original post

3 REPLIES 3

Not sure if this will be helpful, #JustSaying

Apigee is a great platform for managing APIs, however it isn't that great for routing requests to web applications. I'd like to draw your attention to a couple points below.

  1. With a proxy base path, your website URLs won't be memorable; instead, they will look like https://xxx.apigee.net/v1/someWebApp.
  2. The Apigee host name must be specified for internal web app redirects.
  3. I'm not sure how Apigee will handle the few status codes in web apps, such as 200 OK (from cache) or 302 Found.
  4. For the relative path in the code to function, every resource in your web application has to be set up with a proxy base path. For example, the source codes' relative naming below won't function.
<img src="/resources/smiley.gif" alt="Hello" style="width:42px;height:42px;">

The above one will call https://xxx.apigee.net/resources/smiley.gif

for this you have to change your relative path in all around the apps like

 

<img src="/v1/someWepApp/resources/smiley.gif" alt="Hello" style="width:42px;height:42px;">

 

Yes, what Chris said. 

There is no ProxyPassReverse in Apigee. You could write one in Apigee, but why would you?  There are systems tat do this better.  nginx, envoy, haproxy, and of course Apache. 

Second, it's expensive to run your webapp calls through Apigee. 

tl;dr Do not use Apigee as a general purpose webapp reverse proxy. 

Thanks all, looks like it wouldn't make sense to use Apigee as a reverse proxy for a web app then.