amazon-web-services - 如何在不显示我的 s3 链接而是保持烧瓶 url 路由的情况下路由到我的 S3 实例?
问题描述
我希望隐藏我的 s3 存储桶 url,而只显示来自我的烧瓶服务器的原始 @app.route。到目前为止,我必须重定向到 s3 存储桶,但我不希望我的用户看到丑陋的 s3 url,而是想要整洁的 url (example.com/s3bucketsite)。如何在我的烧瓶服务器中完成此操作?
我这样做的原因是因为我有一个 url 已经购买并被这个服务器端使用。我也有一个前端,我想通过这个服务器路由访问。我用过的:Url_for() 不适用于 s3 存储桶 url 创建,而 Flask-s3 似乎也不适用于此。
@app.route('/mys3bucketfront')
def getS3site():
return redirect('http://bucketname.s3-website.us-east-2.amazonaws.com')
从重定向中,我得到了预期的结果:重定向到 s3 url 并且该 url 显示在地址栏中。我想通过在应用程序中嵌入 s3 存储桶端点或在没有新 CDN 或 url 的情况下屏蔽 s3 存储桶端点来维护原始应用程序路由。
解决方案
您可以为静态网站托管设置您的存储桶。它将为您提供一个 URL,然后您可以使用 DNS 为该 URL 创建一个别名。
参考:使用自定义域设置静态网站
通常,人们也使用Cloudfront。它是一个 CDN,可以提高您网站的性能,允许您将请求传递到 S3,并允许您将域与 SSL 流量相关联,因此更安全。
参考:
推荐阅读
- docker - docker 在 gitpod 中,公开端口
- pandas - 这两个部分在功能上是否等同于数据框的 applymap 功能?
- reactjs - 通过 React 高阶组件传递子道具的正确 TypeScript 类型
- javascript - 使用nodejs,express mongoose在文件共享系统中出错
- python - cur.fetchone()[0] 突然变成了 Nonetype
- javascript - 如果第一个评估为 TRUE,我希望我的 javascript 移动到下一个 if 语句
- oracle - ODI 12c - 可能因为“创建为”对话框中选择的技术不正确,无法在图表上放置任何对象
- android - 从 Android 中打开带有图库的 Instagram 应用程序以供选择
- javascript - UNHANDLEDREJECTION 回调已在 aysnc 并行中调用
- javascript - 事件对象中名称属性的值不正确