过去,我已成功将 AngularJS 应用程序部署到 S3 并html5mode启用,以允许无哈希 URL。
但是,对于我当前的项目,我需要将站点的 Angular 部分放入子目录 ( /app) 中,但遇到了重大问题。
我已经尝试了一些事情,最值得注意的是以下内容,但它会导致重定向循环,而且我认为无论如何都无法使用否定规则匹配来避免这样的问题:
<RoutingRules>
<RoutingRule>
<Condition>
<KeyPrefixEquals>app/</KeyPrefixEquals>
</Condition>
<Redirect>
<ReplaceKeyPrefixWith>app/#</ReplaceKeyPrefixWith>
</Redirect>
</RoutingRule>
</RoutingRules>
Run Code Online (Sandbox Code Playgroud)
我还尝试通过将 404 引导到 app/(还有/app/#, /app/index.html, /app/index.html#)来处理 404 ,但没有任何效果可以使我的应用程序按照我想要的方式工作。在我的 angular 应用程序中导致意外错误的示例:
<RoutingRules>
<RoutingRule>
<Condition>
<HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
</Condition>
<Redirect>
<HostName>mytest.s3-website-us-east-1.amazonaws.com</HostName>
<ReplaceKeyWith>app/index.html</ReplaceKeyWith>
</Redirect>
</RoutingRule>
</RoutingRules>
Run Code Online (Sandbox Code Playgroud)
我可以使用什么规则来让所有以/app定向到开头的请求/app/#?
我对我的 angularjs2 应用程序所需的设置感到非常困惑。
它只是一个带有 html5 模式网址的 SPA 应用程序,我想要的是:
www.mydomain.com/blabla...将被重定向到同一个 mydomain 但没有 wwwmydomain.com/anything/including/path/like/this将提供 s3 (/cloudfront)index.htmlmydomain.com/path/or/not/path/file_that_ends_with_any_extesnion_like.js,请求将从 s3 (/cloudfront) 提供该文件,我也可以设置我的网站,以便所有资产都在资产文件夹中,因此请求mydomain.com/assets/path/blabla.bla将从 s3 (/cloudfront) 提供静态文件mydomain.com/api/...将重定向到包含我的 REST API node.js 服务器的 ec2 实例通常我只会在 nginx 和 node.js 中使用 1 个 ec2 实例,try_files如果它失败,它会提供index.html文件,如果 url 是/api/..它,它将请求重定向到位于同一个 ec2 上的 api
该设置的问题在于,如果您有 1 个以上的 ec2 实例,它就不能很好地扩展并且难以维护
我在谷歌上看了很多,但找不到任何关于如何设置类似于我在 AWS 云中描述的内容的指南或博客文章。
提前致谢 :)
amazon-s3 amazon-cloudfront amazon-ec2 amazon-web-services amazon-route53
由于最近东海岸发生了 S3 宕机事件,我想问一下社区实施容错 S3 网站托管解决方案的最佳方法是什么?
根据我的理解,您需要以您的域(例如 example.com)命名一个存储桶。但是这个存储桶是特定于区域的,并且存储桶名称是全局唯一的,因此我无法在另一个区域创建相同的存储桶。因此,如果该区域因 S3 存储桶而关闭,是否意味着我的网站已关闭?
我继承了几个 AWS 环境。我最近一直在对 s3 进行安全审计,发现一些策略的主体包含我不知道的 aws 帐号,我公司中也没有人熟悉它们。所以我想基本上对相关帐户的所有者进行反向查找。我想确定这些政策是否仍然有效或可以删除。
amazon-s3 amazon-web-services amazon-iam managed-service-accounts
我有一个在 s3 上托管的静态网站,使用 cloudfront 分发。我已经找到了很多关于重定向到 www 的答案,在 s3 前面只有路由 53,但没有关于如何使用 cloudfront 做到这一点。
我尝试了很多不同的东西,但没有一个是 301 重定向到 www,只有别名。
aws s3 sync /WordProcessing/DOCUMENTS s3://mybigbucket --delete --include "*" --exclude ".DS_Store"
Run Code Online (Sandbox Code Playgroud)
如果 .DS_Store 以某种方式到达 AWS S3 mybigbucket(从之前的备份),则使用上述命令不会从目标中删除 .DS_Store 文件,即使我手动执行:
rm /WordProcessing/DOCUMENTS/.DS_Store
Run Code Online (Sandbox Code Playgroud)
在文件服务器上。
我是否缺少 aws s3 同步工作原理的逻辑?在我看来,如果 .DS_Store 已从文件服务器上的源中删除,则应该从 S3 存储桶上的目标中删除它。
如果我取消 --exclude 并再次运行该命令,当 .DS_Store 从文件服务器中删除时,它会从目标中删除它。这似乎不对。
我采取了错误的方法吗?我想要做的是每晚同步文件服务器,并让它不将数千个 .DS_Store 文件传输到 S3 存储桶。
我似乎找不到可以帮助我使用 terraform 将 zip 文件从 aws s3 下载到实例的文档,有人可以帮我找到解决方案吗?
谢谢。
我在我的 EC2 服务器上符号链接了一个 S3 目录。但是当我上传文件时,上传的文件是 0 字节。以前运行良好(我只使用了 Web 服务器目录)
我不知道处理这个问题。有人在 S3 上遇到过这样的问题吗?
谢谢,
我们有一个设施需要每分钟将大约 20 张 3MB 的照片上传到 Amazon S3。这些来自我们本地网络上的 10 台不同的机器。我们需要每天连续这样做 16 个小时。鉴于这些要求,我如何计算从我们的位置上传所需的容量?
任何关于具有增长扩展选项的良好解决方案的建议也将不胜感激。
networking bandwidth scalability amazon-s3 amazon-web-services
只是一个简单的问题:Varnish 可以缓存 S3 对象吗?或者它只适用于服务器上的静态文件?
我们正在使用 Amazon EC2/S3 构建 RDP 集群。用户的主目录位于 S3(单个存储桶)上,所有 EC2 节点都使用 S3FS 挂载同一个 S3 存储桶。每个 EC2 节点都使用登录到该节点的用户的相应主目录。它确实有效,但速度很慢,有随机错误并且不可预测。EBS 不是一个选项,因为需要 100+TB。S3是正确的选择吗?如果不是,那会是什么?
注意:节点运行 Ubuntu Linux。
我的公司销售应用订阅,它在 Amazon Cloud 上作为 SAAS 托管。我有一些客户不太热衷于将他们的文档上传到我的产品,因为我的产品托管在公共云上。为什么会出现这种对云的普遍不信任?
即使是外行查找 google,也会发现很多白皮书和博客,例如像这样的,它们谈论 Amazon 服务、网络和基础设施的安全性。即使您在自己的服务器上托管任何东西,也很难获得这种安全性(除非您是一家盈利百万美元的公司!)。
当大公司所谓的“安全专家”提出这些疑问时,我想知道我是否遗漏了什么。如果您的服务器具有物理安全性,网络安全性可以保护您免受 DDos、Ipspoofing 等攻击,最后还有无数其他安全性,例如磁盘加密、实例隔离、SSL 等,那么为什么有人会怀疑通过安全通道推送文档/数据到亚马逊托管的应用程序?
我每个月有 5072,792,622 个文件要上传到 s3 服务器,这花费了我很多钱,因为我们使用 PUT 请求将它们上传到 s3 服务器,是否还有另一种方法可以用来将文件上传到 s3。这些文件不能以 zip 格式上传,s3 不支持在 s3 上解压缩。
amazon-s3 ×13
amazon-ec2 ×4
amazon-ebs ×1
amazon-iam ×1
aws-cli ×1
bandwidth ×1
networking ×1
rewrite ×1
s3fs ×1
scalability ×1
security ×1
terraform ×1
upload ×1
varnish ×1