如何通过rewrite规则进行多站点支持
多站点功能允许你使用重写规则将多个网站合并到一个域名下。直接在 Framer 中管理重写规则,而无需设置自定义反向代理(例如使用 Cloudflare 或 Vercel)。
什么是重写(Rewrites)?
重写可在浏览器中保持原始 URL 可见的同时,显示来自其他 Framer 站点或外部来源的内容,让你能在单一域名下托管多个站点。(相比之下,重定向会更改浏览器中的 URL。)
例如:
你的主站位于
designer.com你的博客(一个独立的 Framer 项目)可显示在
designer.com/blog你的文档(托管在外部)可显示在
designer.com/docs
这一切都无缝进行,访客看到的是一个统一的单一域名。
使用场景
组织大型网站 – 将网站拆分为更小、更易管理的项目,便于独立开发和维护。
结合 Framer 与外部工具 – 主站使用 Framer 托管,同时集成商店、文档站点或自定义应用等外部服务。
团队协作 – 允许不同团队独立开发网站的不同部分,避免冲突。
如何设置重写规则
进入 Framer 控制面板,在侧边栏选择你的域名,然后进入 多站点(Multi Site) 标签页。
添加重写规则
点击 + 图标以添加规则
选择重写类型:
项目:路由到另一个 Framer 项目
外部:路由到外部网站
输入你希望内容显示的 路径(例如
/blog或/blog/*)输入 目标:
对于项目:选择你的 Framer 项目并指定路径
对于外部:输入外部网站的完整 URL
点击 添加 保存规则
发布 你的项目以使更改生效
路径模式
通配符匹配:使用
*匹配任意路径段/blog/*可匹配/blog/my-post、/blog/2024/update等动态参数:使用
:parameter表示动态段/blog/:slug可匹配/blog/my-post并将 “my-post” 捕获为 slug 值
管理规则
重新排序规则:拖拽调整优先级(规则按顺序执行)
编辑与删除规则:点击 ··· 菜单或右键编辑或移除规则
应用更改:打开并发布你的项目以使更改生效
示例
从外部服务商迁移至 Framer
如果你想将网站迁移到 Framer,但不想一次性重建所有内容,可以逐页迁移。首先在 Framer 中重建关键页面,然后使用重写规则让这些特定路径指向新的 Framer 项目,其余内容仍保留在当前服务商。
路径:/products/*
目标:old-site.com/products/:1
访问 designer.com/products 的用户将看到来自 example.com 的旧网站内容,而你正在重建产品页面。重建完成后,移除该重写规则。
从另一个项目提供博客内容
路径: /blog/*
目标: another-project/:1
访问 designer.com/blog 的用户将看到来自“Another Project”项目的博客页面。
托管外部文档
路径: /docs/*
目标: https://docs.yoursite.com/*
这将在 designer.com/docs 显示你托管在外部的文档。
组合多个部分
你可以创建多条规则来整合不同来源:
/→ 主 Framer 项目/blog/*→ 博客项目/help/*→ 外部帮助中心/app/*→ Web 应用程序
重要注意事项
CMS 集合:对于由 CMS 驱动的页面,重写规则中的集合路径必须与源项目匹配。例如,如果源项目中博客使用 /blog/:slug,则重写路径也应使用 /blog/:slug。
本地化:当使用本地化项目与重写时,请确保重写路径与目标之间的区域路径结构一致。
规范 URL(Canonical URLs):在每个项目中设置规范 URL,指向其最终被提供的域名。
站点地图(Sitemaps):Framer 会自动从所有重写来源生成并合并站点地图。
密码保护: 密码保护仅适用于主项目。在目标项目上启用密码保护不会保护通过重写提供的内容。
定价
多站点(Multi Sites)作为附加功能包含在 Scale 计划中,或包含在 Enterprise 计划内。
查看定价