2017-05-26 55 views
0

我試圖將反應項目部署到s3,並且我遵循此說明的每一步。 https://medium.com/@omgwtfmarc/deploying-create-react-app-to-s3-or-cloudfront-48dae4ce0af如何將反應項目部署到AWS s3

但是,我看不到我的項目在S3服務器上,我總是得到這2個錯誤。

Uncaught SyntaxError: Unexpected token < 
Failed to load resource: the server responded with a status of 403 (Forbidden) 

誰能告訴我如何解決這個問題?我應該改變什麼嗎?

這裏是文件structore enter image description here

這是第一個三線的產生main.js

!function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="/",t(0)}(function(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))switch(typeof e[t]){case"function":break;case"object":e[t]=function(t){var n=t.slice(1),r=e[t[0]];return function(e,t,o){r.apply(this,[e,t,o].concat(n))}}(e[t]);break;default:e[t]=e[e[t]]}return e}([function(e,t,n){ 
+0

您能否提供更多詳細信息?就像你的文件看起來一樣,你在哪裏得到錯誤等等。沒有這些,就不可能提供任何建議。 – error404

+0

@AnululHasan,謝謝你的回覆。我只是附加了文件結構和生成的main.js文件 – Darren

回答

1

好像你CloudFront的起源了接入身份沒有權限訪問您的S3存儲。您必須更新存儲桶策略以允許從雲端訪問或更新雲端設置來創建原始標識並自動更新存儲桶策略。

您可以從雲端執行此操作,通過轉到原點並編輯s3原點,如下面的屏幕截圖所示。

enter image description here

不然,如果你想從S3鬥做到這一點,看看在主題下面的AWS文檔中的「授權允許亞馬遜CloudFront的原產地標識」。

http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-6

+0

謝謝你的作品! – Darren

+0

太棒了!如果您對此感到滿意,您可以將答案標記爲已接受。 – Asanka