Can we skip configuring the reverse proxy for version 14.2

Per the documentation available at this link it appears that I need to create and configure the reverse proxy on all versions of 14. However, it is my understanding that after version 14.2, the proxy is no longer required. Can I assume that I can just skip the reverse proxy step for version 14.2 and onward? Is there any documentation specifically for creating a BR implementation without the reverse proxy?

Hi Sarah,
There’s a misunderstanding I guess… in 14.0 and 14.1 you needed an extra proxy rule on behalf of integrating a SPA with the Experience Manager, see URL Rewriter Rules for Reverse-Proxying External SPA (14.0-14.1) - Bloomreach Experience - Headless Digital Experience Platform

It doesn’t mean the Apache or nginx webserver that is in front of Tomcat should be taken out.

Regards, Jeroen

Hi, Jeroen!

I understand that we’ll still need the proxy on 14.1 and 14.2. We’re planning to upgrade to 14.4, and my understanding was that after 14.2, the reverse proxy is no longer required. Did I not understand that correctly?

Thanks,
Sarah

Hi Sarah,
The Apache or nginx webserver (a.k.a. “reverse proxy”) in front of Tomcat needs to be there always. This is something else than the proxy used before 14.2, specifically for integrating the SPA site with the CMS (Exp. Mgr). That could be done in a separate proxy or with proxy URL rewriter rules. You don’t need that part for 14.2 and up.

Jeroen

Hi, Jeroen!

Ok, so we will always need to have the webserver, but it will not be involved in integrating the SPA and the CMS? Do we need to take any additional steps to make this change when we upgrade past 14.2?

Thanks,
Sarah

Hi Sarah,
The webserver never was part of the SPA/CMS integration.

If you have URL Rewriter proxy rules, like this here, then these are no longer needed.

More upgrade steps at https://documentation.bloomreach.com/14/library/upgrade-minor-versions/upgrade-14.2-to-14.3.html

HTH
Jeroen

Hi, Jeroen,

I’m sorry, I’m still confused. For local development, we are able to remove the reverse proxy entirely after upgrading to 14.3.3 locally. Previously, we needed it to integrate the SPA and CMS. I’m not sure what the purpose of the reverse proxy is beyond integrating the SPA and CMS. In our remote environments, we have the tomcat server running the CMS, and an app engine running our angular application. The Apache reverse proxy, from my understanding, is what handles the communication between those two entities. But it sounds like it might serve another purpose?

Thank you,
Sarah

Hi Sarah,
Yes indeed for local development, no reverse proxy is needed, you access Tomcat directly on localhost:8080/cms/.

For remote environments, such proxy (Apache httpd or nginx) is typically used to make the CMS and site(s) available on their proper URLs, hiding port number, context path. See

HTH
Jeroen

Thanks Jeroen! That makes sense. I’ll pass this info on to our Managed Services Team!

Sorry, Jeroen, I have one more question.

You mentioned that nginx can be used as a proxy. We are currently using nginx as our load balancer. Can nginx be used both as a load balancer and a proxy simultaneously?

Thanks,
Sarah

Hi Sarah,
This is somewhat out of my expertise but I found an interesting read at https://www.nginx.com/resources/glossary/reverse-proxy-vs-load-balancer/ saying that NGINX Plus can do both!

Regards, Jeroen

1 Like