How to self host using reverse proxy
Reverse proxy hosting is a modern way to integrate an existing hosting provider or infrastructure with your Framer site for full control over headers, authentication or delivery. Every modern hosting platform like Vercel, Netlify, CloudFlare or AWS supports it.
Please note: Using reverse proxy with Framer is only available in the business plan.
How it works
You can really think of this as “automatic uploading”. Instead of downloading and uploading a new version after every update, your server can just ask the Framer site directly for the requested page and save it so it can be served from your host (and optionally modified).
Technically, you tell your hosting platform to simply forward the request from a client to your Framer site under the hood, optionally modify it (like setting headers and adding authentication) send it back and cache it locally so the next request gets served directly from your host (skipping typical manual upload steps).
We typically see customers use proxy hosting if they:
Want to integrate different websites under a single domain. Proxy rewrites allow you to point different paths to different origins. So /hello could point to one Framer site, /signup to another, all while the main index could be another site built in Next or React directly. This approach is very popular and sometimes called micro frontends.
Want to add authentication, analytics or cookies to the requests before they send them.
Want to add an additional layer or server side analytics or optimizations.
Want to add an additional layer of caching for reliability and performance.
Make sure traffic gets served from “vetted” enterprise infrastructure in larger companies.
How to set it up
We have articles for the most common hosting platforms, but any one supporting reverse proxy setups works.
Enable “Staging” so you can publish to your <random>.framer.app domain for previewing and the custom domain for the live site.
Use a (free) custom domain (e.g. mysite.framer.website) and point the proxy to that, rather than configuring the Framer site to use your domain. This will allow you to use SSL end to end. Framer needs control of the full domain to generate SSL certificates.
Configure the “Canonical URL” for a site in the General settings so that’s set correctly in the HTML and the sitemap.
When using subpaths, set up the Framer project to use the same paths rather than rewriting them in the proxy. This will ensure that redirects that Framer does to remove/add trailing slashes in URLs keeps working. For example, if you want example.com/products/* of your site powered by Framer, set up your framer projects so the pages also use /products/<page>.