2017-05-26 53 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