簡體   English   中英

如何使用亞馬遜s3服務角2

[英]How to serve angular 2 using amazon s3

是否可以使用amazon s3來提供角度2 app而無需使用專用服務器。 如果是這樣怎么辦?

是的,您可以將應用程序部署到AmazonS3,但不應直接從Amazon S3提供: S3是存儲服務,而不是分發服務 這就是為什么您應該為S3存儲桶創建CloudFront分配。

腳步:

  1. 使用npm run build --prod構建你的應用npm run build --prod (小心包括--prod選項!)

  2. 為您的Amazon S3存儲桶創建CloudFront分配,並將您的Default Root Object設置為index.html

  3. 如果您使用url重寫而不是哈希策略(您的路徑看起來像http://yourwebsite/login而不是http://yourwebsite/#/login使用以下內容為您的CloudFront分配創建自定義錯誤響應:

    • HTTP錯誤代碼:404

    • 錯誤緩存最小TTL(秒):0

    • 自定義錯誤響應:是的
    • 響應頁面路徑:/index.html
    • HTTP響應代碼:200

將應用程序部署到CloudFront上的Invalidate index.html時,您還需要小心,否則舊版本將被緩存並將提供給客戶端。

按照我的指南了解更多詳情

有可能的。 但是你應該使用webpack

配置應用程序以使用webpack后,您可以npm run build並將處理后的文件作為靜態網站上載到S3

不,沒有專用服務器就無法使用amazon s3運行angular2。 根據Angular2 Docs ,您至少需要很少的服務器來運行這些文件。 你可以做的是在E3或ESB上運行NodeJs服務器,並在那里部署你的angular2應用程序。

感謝@Gunter指出 - 沒有額外的命令行參數就無法做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM