Adobe Commerce Cloud - Reverse Proxy

Hi Guys,
We are trying to set up the reverse proxy to show the blogs under our Main website.
For example,
Magento main website - www.site.com
Blogs - blogs.site.com
We need to display the blog.site.com/blog-1 content under the www.site.com/blog-1 to get the SEO benefits on our Main domain.
How can we do it for Adobe Commerce Cloud?
Thanks,
Chandru R


Hi Chandru,

Great question — and one that comes up often when folks are trying to consolidate SEO authority on a primary domain. To achieve your goal of displaying blogs.site.com/blog-1 content under www.site.com/blog-1 (while keeping it technically hosted on the subdomain), you’ll want to configure a reverse proxy at the edge layer of Adobe Commerce Cloud (ACC). Here’s a breakdown of the approach:

Objective:

You want:

www.site.com/blog-1 → pulls content from → blogs.site.com/blog-1

How to do it on Adobe Commerce Cloud (formerly Magento Cloud):

Adobe Commerce Cloud is built on a Fastly CDN and uses VCL (Varnish Configuration Language) for edge routing logic. Here’s the high-level setup:

1. Use Fastly’s custom VCL snippets:

You can insert a custom recv or fetch VCL snippet in your Fastly configuration to proxy requests.

Example:

if (req.url.path ~ “^/blog-”) {

set req.backend = F_blog; set req.url.host = “blogs.site.com”; set req.url = regsub(req.url, “^/blog-”, “/blog-”); }

Where F_blog is a custom backend pointing to blogs.site.com.

Note: You’ll define this backend in your Fastly config as part of your Adobe Commerce Cloud project settings.

2. Enable CORS and proper Host headers:

Make sure blogs.site.com accepts requests that originate from www.site.com. If the blog is hosted on HubSpot, WordPress, or another CMS, ensure:

  • CORS headers are set (if JS or embedded content is needed)
  • Host header forwarding is allowed (some CMSs might reject the proxy request if the Host header isn’t expected)

3. Handle Canonical URLs and SEO headers:

Use rel=“canonical” tags carefully to avoid duplicate content flags. Your proxied blog pages should emit canonical links pointing to www.site.com/blog-1, not the original blogs.site.com address.

4. Test with Curl or Staging:

Once set, test your routing using:

curl -I https://www.site.com/blog-1

Look for X-Backend headers (or custom logs) that verify the content is being fetched from blogs.site.com.


Important Caveats:

  • This setup is not recommended for dynamic blog platforms like HubSpot if you’re trying to handle smart content, personalization, or session-based logic — those features may not play well through a reverse proxy.
  • You’ll need access to Adobe Commerce Cloud’s environment configurations and Fastly portal (or via Adobe’s support team) to set this up.

If your blog is on HubSpot and you’d prefer tighter integration without proxy complexity, you might also consider using HubSpot CMS Memberships or Embedded Blog modules as an alternative approach.

Let me know if this helps, or if you have any other questions!


:check_mark: Was I able to help answer your question? Help the community by marking it as a solution.

Brandon Woodruff
Senior Software Developer @ PearagonStill have questions? Reach out at brandon@pearagon.com

Hi Brandon,
Thanks for the update. I have configured the proxy setup using “Fastly Edge Modules - Other CMS/Backend integration”. But when I hit the URL, it shows 403 from cloudflare. Since we are in adobe commerce cloud, I beleive this 403 comes from Hubspot.

Regards,
Chandru R

Hey, @CR33 :waving_hand: You may need to reach out to the 3rd party app creator for support or help troubleshooting this. It’s becasue our community members won’t have access to the needed information to give you a clue to the root cause. — Jaycee