Docs/Frameworks & builders

Subfolder with Framer

Framer can't reverse-proxy a path — put Cloudflare in front and a tiny Worker mounts the blog at /blog.

  • Enable Settings → Subfolder hosting in the blogcms dashboard.
  • Route your domain's DNS through Cloudflare (proxied / orange cloud) — Framer keeps serving the rest of the site.
  • Create this Worker and route yoursite.com/blog* to it:
worker.jsexport default { async fetch(request) { const url = new URL(request.url); if (url.pathname === "/blog/") { return Response.redirect(url.origin + "/blog", 301); } if (url.pathname === "/blog" || url.pathname.startsWith("/blog/")) { const path = url.pathname === "/blog" ? "/" : url.pathname.slice(5); return fetch("https://you.blogcms.app/_subfolder" + path + url.search); } return fetch(request); // everything else: untouched }, };
  • Publish the blog once, then hit Verify setup.