我想在网址build/1.coolfile.html
上投放/1/coolfile
文件。我找不到像这样“重写”网址的方法。我所看到的只是做http redirect的方法。
答案 0 :(得分:0)
据我所知,AWS没有可以为您重写URL的服务。您需要部署负载均衡器(如Apache或nginx)才能执行此操作,如果您不想创建和管理基础结构,我认为您可以在Elastic Beanstalk上运行apache。
答案 1 :(得分:0)
正如迈克尔 - sqlbot可能暗示过你可以用cloudfront和lambda做到这一点。 Cloudfront很容易设置,但lambda让你设置然后不起作用,你留下零线索,不得不尝试几个小时的随机事情,直到它最终工作。玩得开心。
编辑 - 因为这是一次创伤性体验,所以我会很友好地回归。
创建你的lambda。让它为你的lambda创建一个新角色。您需要在IAM中编辑该角色的策略(转到aws控制台并键入IAM)。我看起来像这样(注意我添加了s3:GetObject)
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:PutLogEvents",
"logs:CreateLogGroup",
"s3:GetObject"
],
"Resource": "*"
}
]
}
arn:aws:lambda:us-east-1:169014044482:function:RewriteURL:9
一旦你完成所有这些****,你就可以写一个看起来与此类似的lambda(除非他们自从我写这个以来就改变它了哈哈)。
exports.handler =(event,context,callback)=> { const request = event.Records [0] .cf.request; request.uri =“/ images / favicon.png”; callback(null,request); 抱歉,但stackoverflow不会格式化此代码。是的,每一行都缩进了4个空格,并且在它上面和下面都有换行符LOLLL !!!!
每次打开新标签页以访问其他服务时,请确保重新登录亚马逊控制台,并确保将其重定向到控制台,无论您使用的是哪个页面。不要问我如何让它进行重定向。我尝试的每个解决方案都不起作用,我已经尝试了很多。 ...如果你刚刚开始这个我会建议不要使用AWS,除非你愿意花费大量的时间。