Vercel 和 Pythonanywhere | 在域和子域上分别部署前端和后端

Vic*_*teC 4 deployment vercel

我一直在开发一个使用 Django 作为后端、React 作为前端框架的项目。我已经在 Pythonanywhere 中部署了这个项目,并且运行良好。现在,我想在我的项目中实现 Next.js,但不幸的是,Pythonanywhere 不支持 Node.js。因此,我决定在 Vercel 中部署前端,并在 Pythonanywhere 中部署后端。

为了实现这一目标,我计划创建一个处理 API 请求的子域。在域名DNS面板中,每个域名和子域名分别指向不同的站点。它看起来像这样:

  • www.example.com(指向 Vercel,React 应用程序所在的位置)
  • api.example.com(指向托管后端的 Pythonanywhere)

我在谷歌上搜索过这个,应该有用。但是,我的问题是,这是最好的方法还是我应该考虑其他选择?

这是一篇与此相关的帖子。在这篇文章中,作者计划在 GCP 上部署后端和前端。

预先感谢您的时间和答复!

pau*_*gdm 6

您描述的设置非常标准,并且可以完美运行。您只需注意以下几点即可:

  1. 确保“www”和“@”(又名 root)指向 Vercel 使用 DNS 配置。76.76.21.21它应该是根域中的A 记录和cname.vercel-dns.com“www”子域中的 CNAME 记录。请记住重定向域名以获得最佳 SEO 分数。
  2. 的 DNS 记录api.example.com应指向其他提供商。您需要检查他们是否需要 A 或 CNAME 记录。他们可能需要额外的 DNS 记录(CAA?)。
  3. CORS:请注意,example.com应该触发对api.example.com. 您的 CORS 配置应该考虑到这一点。CORS 是一个完全不同的讨论,但我会为您指出正确的方向。您需要检查Next.js 自定义标头CORS 指南

如果您在 Vercel 上遇到任何问题,可以联系他们的支持渠道