【问题标题】:Vercel and Pythonanywhere | Deploy separtly frontend and backend on domain and subdomainVercel 和 Pythonanywhere |在域和子域上分别部署前端和后端
【发布时间】:2021-01-06 08:20:25
【问题描述】:

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

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

  • www.example.com(指向托管 React 应用的 Vercel)
  • api.example.com(指向托管后端的 Pythonanywhere)

我在 Google 中搜索过这个,它应该可以工作。但是,我的问题来了,这是最好的方法还是我应该考虑其他选择?

这是一个与此相关的post。在帖子中,作者计划在 GCP 上同时部署后端和前端。

提前感谢您的时间和回答!

【问题讨论】:

    标签: deployment vercel


    【解决方案1】:

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

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

    如果您在 Vercel 上遇到任何问题,可以联系他们的support channel

    【讨论】:

      猜你喜欢
      • 2020-07-27
      • 2019-08-21
      • 2020-11-11
      • 2020-11-28
      • 2022-11-04
      • 2022-09-28
      • 2021-05-06
      • 1970-01-01
      • 2021-09-14
      相关资源
      最近更新 更多