遷移 Next.js 11 SSR 應用程式以 Amplify 主機運算 - AWS Amplify 託管

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

遷移 Next.js 11 SSR 應用程式以 Amplify 主機運算

當您部署新的 Next.js 應用程式時,預設情況下,Amplify 會使用最新的支援版本 Next.js。目前,Amplify 主機運算 SSR 提供者支援 Next.js 版本 13。

Amplify 主控台會偵測您帳戶中在 Amplify 主機運算服務發行之前部署的應用程式,並完整支援 Next.js 12 和 13。主控台會顯示資訊橫幅,識別使用 Amplify 先前的 SSR 提供者經典 (僅限 Next.js 11) 部署的分支的應用程式。我們強烈建議您將應用程式移轉至 Amplify 主機運算 SSR 提供者。

您必須同時手動遷移應用程式及其所有生產分支。一個應用程序不能同時包含傳統版(僅限 Next.js 11)和 Next.js 12 或 13 個分支。

使用下列指示將應用程式移轉至 Amplify 主機運算 SSR 提供者。

將應用程式移轉至 Amplify 主機運算 SSR 提供者
  1. 登入 AWS Management Console 並開啟 Amplify 大控制台

  2. 選擇您要遷移的 Next.js 應用程序。

    注意

    在 Amplify 控制台中遷移應用程式之前,您必須先更新應用程式的套件 .json 檔案,以使用 Next.js 版本 12 或 13。

  3. 在導覽窗格中,選擇 [應用程式設定]、[一般]。

  4. 如果應用程式已使用傳統 (僅限 Next.js 11) SSR 提供者部署分支,則主控台會在應用程式首頁上顯示橫幅。在橫幅上,選擇 [移轉]。

  5. 在移轉確認視窗中,選取三個陳述式,然後選擇轉。

  6. Amplify 會建置並重新部署您的應用程式,以完成移轉作業。

還原 SSR 移轉

當您部署 Next.js 應用程式時,Amplify 主機會偵測應用程式中的設定,並設定應用程式的內部平台值。有三個有效的平台值。SSG 應用程式已設定為平台值WEB。使用 Next.js 版本 11 的 SSR 應用程式會設定為平台值WEB_DYNAMIC。Next.js 12 或 13 SSR 應用程式已設定為平台值WEB_COMPUTE

當您使用上一節中的指示移轉應用程式時,Amplify 會將應用程式的平台值從變更WEB_DYNAMICWEB_COMPUTE。遷移到 Amplify 主機計算完成後,您無法在控制台中還原遷移。若要還原遷移,您必須使用 AWS Command Line Interface 將應用程式的平台變更回WEB_DYNAMIC。打開終端機窗口並輸入以下命令,使用您的唯一信息更新應用程序 ID 和區域。

aws amplify update-app --app-id abcd1234 --platform WEB_DYNAMIC --region us-west-2