如何使用 AWS 部署帶有自定義域的 React 項目?

如何使用 aws 部署帶有自定義域的 react 項目?

使用 aws(amazon web services)等云提供商通過自定義域部署 react 應用程序可能看起來令人畏懼,但當分解為可管理的步驟時,它就很簡單。在本文中,我們將指導您完成從構建應用程序到使其在您的自定義域上運行的整個過程。

當您準備好與世界分享您的 react 項目時,使用自定義域部署它可以為您的應用程序帶來專業的觸感。 aws 提供了一個強大的、可擴展的平臺來托管靜態網站,使其成為部署 react 應用程序的絕佳選擇。本指南將引導您逐步完成使用自定義域在 aws s3 上部署 react 應用程序的過程。

準備部署您的 react 應用程序**

在部署之前,您需要構建您的 react 應用程序:

  1. 構建您的應用程序:在終端中運行以下命令來生成 react 應用程序的生產版本:
   npm run build
關注:愛掏網
關注:愛掏網

此命令創建一個優化的構建文件夾,其中包含您需要部署的所有文件。

  1. 測試構建:在部署之前在本地測試你的構建是個好主意。您可以使用像服務這樣的包:
   npx serve -s build
關注:愛掏網

此命令將在本地為您的應用程序提供服務,以便您可以確保一切按預期工作。

設置 aws s3**

aws s3(簡單存儲服務)是托管 react 應用程序等靜態網站的絕佳選擇。

  1. 創建s3存儲桶:

    • 前往aws s3控制臺。
    • 點擊“創建存儲桶”。
    • 輸入唯一的存儲桶名稱(這將是您的應用程序的名稱)。
    • 選擇離目標受眾較近的地區。
    • 取消選中“阻止所有公共訪問”選項并確認您的存儲桶將可公開訪問(對于托管網站很重要)。
  2. 上傳你的react應用:

    • 創建存儲桶后,點擊它打開它。
    • 點擊“上傳”并選擇構建文件夾中的所有文件。
    • 上傳后,點擊“屬性”,然后啟用“靜態網站托管”。
    • 將“索引文檔”設置為index.html,將“錯誤文檔”設置為index.html
  3. 公開存儲桶:

    • 轉到您存儲桶中的“權限”選項卡。
    • 點擊“存儲桶策略”并粘貼以下 json,將 your-bucket-name 替換為您的實際存儲桶名稱:
     {
       "version": "2012-10-17",
       "statement": [
         {
           "sid": "publicreadgetobject",
           "effect": "allow",
           "principal": "*",
           "action": "s3:getobject",
           "resource": "arn:aws:s3:::your-bucket-name/*"
         }
       ]
     }
    
    關注:愛掏網
  • 保存政策以允許公眾訪問您的文件。

設置自定義域**

要使用自定義域,您需要配置 aws 的 dns web 服務 route 53。

  1. 注冊您的域名:

    • 如果您沒有域名,可以直接通過aws route 53注冊一個。
    • 如果您已有域名,您仍然可以通過 route 53 為其創建托管區域來管理它。
  2. 配置53號路線:

    • 在 route 53 儀表板中,轉到“托管區域”并單擊您的域。
    • 點擊“創建記錄”并選擇“a - ipv4地址”。
    • 選擇“別名”并選擇您的s3存儲桶作為別名目標。
  3. 更新您域名的dns:

    • 如果您的域是在 aws 外部管理的,請更新您的 dns 設置以指向您創建托管區域時提供的 route 53 名稱服務器。

使用 aws certificate manager 設置 ssl(可選但推薦)**

為了安全和seo的好處,使用https至關重要:

  1. 申請證書:

    • 前往aws證書管理器。
    • 申請公共證書并輸入您的域名(包括www.yourdomain.com和yourdomain.com)。
    • 按照aws提供的說明驗證域名。
  2. 配置cloudfront:

    • 設置 aws cloudfront 以通過 https 安全地提供您的內容。
    • 在 cloudfront 控制臺中,創建一個新的分配并選擇您的 s3 存儲桶作為源。
    • 在ssl證書下,選擇“自定義ssl證書”并選擇您創建的證書。
    • 更新域設置以指向cloudfront分配而不是直接指向s3存儲桶。

示例:部署示例 react 應用程序

假設您已經使用 react 創建了一個個人作品集,并且想要將其部署到 www.myportfolio.com:

  1. 構建你的 react 應用
   npm run build
關注:愛掏網
關注:愛掏網
  1. 上傳到s3

    • 創建名為 myportfolio.com 的 s3 存儲桶。
    • 上傳您的構建文件夾內容。
    • 啟用s3靜態網站托管。
  2. 配置53號路線:

    • 在 route 53 中注冊 myportfolio.com.
    • 在 route 53 中創建一條指向您的 s3 存儲桶的 a 記錄。
  3. 設置ssl:

    • 為myportfolio.com申請ssl證書。
    • 設置 cloudfront 發行版以通過 https 安全地為您的應用程序提供服務。

片尾曲

在 aws 上使用自定義域部署 react 應用程序一開始可能看起來很復雜,但通過上述步驟,您可以放心地托管您的應用程序,并享受專業部署的所有優勢。無論您是部署個人項目還是生產級應用程序,aws 都能提供滿足您需求的工具和可擴展性。

常見問題

q1:我需要支付 aws s3 和 route 53 費用嗎?

答:是的,aws 服務是付費的,但它們提供使用有限的免費套餐,這通常足以用于小型項目或測試。

q2: 我可以使用其他域名注冊商代替 route 53 嗎?

答:是的,您可以使用其他注冊商,并通過相應配置 dns 設置將您的網站托管在 aws s3 上。

q3:為什么我應該使用cloudfront?

答:cloudfront 提供更好的性能、安全性(https)和緩存,可以顯著提高您網站的速度和可靠性。

q4:如果我在部署過程中遇到問題如何辦?

答:aws 文檔和社區論壇是排除故障的絕佳資源,如果需要,還可以提供客戶支持。

按照本指南,您可以使用 aws 部署帶有自定義域的 react 應用程序,并確保專業且安全的網絡存在。

以上就是如何使用 AWS 部署帶有自定義域的 React 項目?的詳細內容,更多請關注愛掏網 - it200.com其它相關文章!

聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
發表評論
更多 網友評論0 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 国产精品视频第一区二区三区| 欧美激情校园春色| 成人精品一区二区户外勾搭野战| 国产好深好硬好爽我还要视频| 乱人伦xxxx国语对白| 五月婷婷中文字幕| 欧美一级专区免费大片| 国产精品19禁在线观看2021| 亚洲人成色7777在线观看不卡 | 日韩欧美在线免费观看| 国产欧美精品区一区二区三区 | 亚洲一区二区三区深夜天堂| 亚拍精品一区二区三区| 亚洲人成网站看在线播放| 最近免费中文字幕大全高清大全1| 国产精品一区二区久久乐下载| 亚洲伊人久久精品影院| 国产麻豆欧美亚洲综合久久| 暖暖免费中国高清在线| 国产又色又爽又黄刺激在线视频| 久久免费看视频| 羞羞漫画成人在线| 小小视频最新免费观看在线| 伊人色综合一区二区三区| Channel| 欧美精品久久天天躁| 成人a免费α片在线视频网站| 午夜精品久久久久久| h在线观看免费| 欲惑美妇老师泛滥春情在线播放| 国产精品欧美亚洲| 九九精品国产亚洲AV日韩| 青苹果乐园在线影院免费观看完整版| 日本一卡2卡3卡4卡无卡免费 | 亚洲人成日本在线观看| 韩国成人在线视频| 无人在线观看视频高清视频8 | 亚洲毛片在线看| www四虎在线高清| 欧美老熟妇xB水多毛多| 国产手机精品视频|