Ank*_*Ank 7 subdomain wildcard-subdomain next.js dynamic-routing
如何在 NextJS 中实现动态子域路由功能?
abc示例:如果用户在站点中提供用户名,xyz那么他可以访问他的站点abc.xyz.com
另外,如果用户有abc.com域,那么他可以指向abc.com“abc.xyz.com
所以”,如果将来有人打开abc.com,则abc.xyz.com可以提供服务。URL 中也abc.com显示了。
我调查了 NPM 中的一些插件,例如 vhost 和通配符子域,但不确定这是解决此问题的正确方法。
虚拟主机需要对hosts本地系统中的系统进行更改,而通配符子域纯粹通过路由解决了问题。
本地系统设置我已经使用暂时有效的代码自定义了Server.js,但似乎不是可以在生产中使用的解决方案:
服务器.js
...
if (pathname === "/demo.demo.com") {
app.render(req, res, "/demo.demo.com", query);
}
...
Run Code Online (Sandbox Code Playgroud)
在_app.js中
static async getInitialProps(appArgument) {
...
return {
...
renderFrom: "demo.demo.com"
};
}
Run Code Online (Sandbox Code Playgroud)
在我的主机中我也demo.demo.com指出了localhost。
该网站适用于我,demo.demo.com:3000但如何使用数据库和CNAME记录将其推广到生产场景中,并使用用户操作自动添加/更改 CNAME 记录。
我刚刚发现这篇博文https://demo.vercel.pub/platforms-starter-kit,它是 6 天前发布的。
\n它发布了https://platformize.co/,这是一款可以做到这一点的产品。
\n\n\n多租户应用程序使用单个统一代码库为不同子域/自定义域的多个客户提供服务。
\n例如,这个博客是一个多租户应用程序:
\n\n
\n- 子域名:demo.vercel.pub
\n- 自定义域:platformize.co(映射到 demo.vercel.pub)
\n- 构建您自己的:app.vercel.pub
\n另一个例子是 Hashnode,一个流行的博客平台。每个作者的博客都有自己独特的 .hashnode.dev 子域:
\n\n
\n- eda.hashnode.dev
\n- katycodesstuff.hashnode.dev
\n- 坑.hashnode.dev
\n用户还可以将自定义域映射到其 .hashnode.dev 子域:
\ncatalins.tech \xe2\x86\x92pit.hashnode.dev
\n
| 归档时间: |
|
| 查看次数: |
9091 次 |
| 最近记录: |