2017-09-15 28 views
-1

我有一个测验,我已经上传到Amazon S3 Bucket并为该桶创建了一个cloudfront发行版,并且使用header方法使用WAF限制对内容的访问,这样任何人都无法将我的东西。Amazon WAF可以防止加载Quiz

一切工作正常,直到我决定添加测验到我的网站(在Weebly托管)。所以我创建了一个完美的测验。已将其上传到我的亚马逊s3存储桶,这是一个启用了WAF的cloudfront发行版。我使用了一个Iframe将测验嵌入我的网站。现在问题确实出现,但WAF阻止加载一些资源。我认为cloudfront或亚马逊s3存储桶有问题。

因此,我创建了另一个cloudfront发行版,并将其链接到另一个amazon s3 bukcet,并将相同的测验上传到它并使用iframe将其嵌入到我的网站,它工作得非常好。

所以我想出了这个结论,即WAF导致它不能完全加载。

我已经内嵌测验都在一个与WAF和另一个没有WAF下页

easyenglish.pk/hotlinking

第一个嵌入式测验不WAF工作正常。第二个问题是使用不加载所有资源并继续加载的WAF。

如果有人能帮助我,我将非常感激。我试过自由职业者,但那里的人不知道如何解决这个问题。

+0

这个问题在这里是题外话,因为相关内容不在问题本身。如果所有相关内容都是非现场的,并且有人解决了这个问题,那么这里就没有有用的内容;这个问题对未来的读者没有价值,因为问题不复存在,没有未来价值的问题不属于这里,因为它们无法帮助未来的用户。 –

+0

你介意解释为什么它是脱离主题吗? – GoogleChef

+0

我做到了。阅读我上面的评论。对这里的未来用户没有价值的问题是无关紧要的,**因为它们对未来的用户**没有价值。本网站旨在成为可供其他人参考的知识集合。没有相关内容**在这里的帖子**,没有什么可以分享的。 –

回答

0

乍一看你的问题是,对player.js的引用被阻止(403)。 https://d1au5fut5rqs5s.cloudfront.net/quiz/data/player.js?A1AFCE49

然而,当我试图从你的CloudFront的分发访问任何东西,一切恢复403 https://d1au5fut5rqs5s.cloudfront.net

你有双重检查你的CloudFront的分布是否正常工作?

尝试从您的cloudfront发行版中删除WAF(Web ACL),然后重试。如果您仍然收到403错误,那么问题在于您如何配置CloudFront分配。

对于您的Web ACL,请确保将规则页面底部的“默认条件”设置为“允许所有不符合任何规则的请求”。我经常看到阻止一切的相反设置。

1)在您的控制台中转到AWS WAF。 2)选择Web ACL 3)选择您的Web ACL 4)在此列表规则后面的底部右侧面板中,查找“默认操作”。确保它说“允许所有请求不符合任何规则”

问题: 1)什么是工作的桶名称? 2)什么是不起作用的桶名称? 3)这些桶设置为静态网站托管?

仔细检查S3存储桶配置。比较两个桶之间的桶策略和CORS配置。也许你有一个桶配置问题。

+0

谢谢你的回应。我的WAF工作得很好。当我从发行版中删除它时,测验加载完美无缺。这肯定是造成这个问题的WAF。这两个桶都与云端分布配合使用。这是WAF引起的问题,并没有设置静态网站托管桶。我只是使用这些桶来托管视频,图像和测验。如果它是一个桶问题,即使没有WAF也不行。你怎么看? – GoogleChef

+0

您是否仔细检查了默认操作?如果在将Webfront从Web ACL中删除后正确运行,我肯定会打开Amazon的支持案例。 –

+0

我意识到我错过了一件物品。您对有关防止盗链的标头方法的评论。如果你删除它,一切都会再次运作吗? –