To set up and test a reverse proxy using Amazon CloudFront with a Webflow project (non-Enterprise plan), you’ll need to manually configure CloudFront to serve as a proxy in front of your Webflow-hosted site. This allows you to use your own domain and customize headers and paths without Enterprise-level support.
1. Understand the Use Case and Limitations
- Webflow limits custom reverse proxy support to Enterprise plans, but you can still use CloudFront to indirectly serve your content.
- This approach does not allow Webflow CMS or Editor functionality on the proxied domain. It's best for cases like language localization, URL customization, or integrating Webflow into a broader site.
2. Set Up a Webflow Project with Webflow.io Subdomain
- Publish your Webflow site to its default subdomain (e.g.,
yourproject.webflow.io). - Ensure the full site is functional under this domain before proceeding.
3. Create an Amazon CloudFront Distribution
- Go to the CloudFront console in AWS and click Create Distribution.
- Under Origin domain, enter your Webflow subdomain (e.g.,
yourproject.webflow.io). - Do not use the custom domain—only use Webflow's hosting domain.
- Origin protocol policy: Set to HTTPS only.
- Viewer protocol policy: Set to Redirect HTTP to HTTPS.
- Enable CachingDisabled if your site has dynamic elements or forms.
- Origin custom headers (optional):
- Add headers if you want to restrict or identify CloudFront-origin traffic (e.g.,
X-From-CDN: true).
4. Configure the Alternate Domain and SSL
- Set the Alternate Domain Names (CNAMEs): Add your desired domain (e.g.,
www.example.com). - Attach an SSL certificate from AWS Certificate Manager (must be provisioned in the us-east-1 region).
- Ensure the cert includes all aliases (e.g.,
www.example.com and example.com if needed).
5. Update DNS Records
- In your DNS provider, point your domain to the CloudFront distribution domain name (e.g.,
d123xyz.cloudfront.net) using CNAME or A record with alias support (like in Route 53). - Wait for DNS propagation to complete.
6. (Optional) Rewrite URLs or Paths via Lambda@Edge
- Webflow URLs often follow specific patterns. If you need clean URLs or localization (e.g.,
/en, /fr), use Lambda@Edge to rewrite paths or headers. - Example use cases:
- Strip trailing slashes.
- Redirect
/blog to /blog.html if Webflow uses .html pages. - Keep Lambda functions lightweight and test thoroughly.
7. Test Your Setup
- Access your site using the custom domain pointing at CloudFront.
- Check for:
- 403 or 404 errors (usually due to caching, headers, or origin misconfigurations).
- HTTPS issues (caused by missing or mis-provisioned certs).
- Broken links or missing assets, especially from third-party domains.
Summary
To reverse proxy a non-Enterprise Webflow site through Amazon CloudFront, publish your project to the default webflow.io subdomain, configure CloudFront with that as the origin, link your custom domain using CNAME/SSL, and use Lambda@Edge if URL rewriting is needed. This setup can serve a production-ready Webflow site under your own domain without needing an Enterprise account—but editing, CMS, and form features may be limited.