我在 AWS S3 上有一个无服务器网站。但 S3 有一个我想克服的限制:它不允许我拥有友好的 URL。
例如,我想替换网址:
www.mywebsite.com/user.html?login=daniel
对于这个 URL 友好:
www.mywebsite.com/user/daniel
所以,我想知道是否可以使用 Lambda 和 API Gateway 来实现这一点。
我的想法是:
API网关---> Lambda函数--->获取S3资源
API 网关将收到任何请求,并将信息传递给 Lambda 函数,该函数将使用请求 URL 处理一些逻辑(可能包括一些数据库查询),然后从 S3 获取资源。
我知道 AWS API Gateway 的主要目的是成为 REST API 的网关,但我们也可以将它用作整个网站的代理吗?
好的选择是使用 CloudFront 作为反向代理,您可以使用 Viewer/Origin 响应请求来触发 lambda 并从 S3 获取资源。
https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-examples.html https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-examples.html
https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/ https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)