AWS Routing 53域名指向Github页面 [英] AWS Route 53 Domain Point To Github Pages

查看:0
本文介绍了AWS Routing 53域名指向Github页面的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不熟悉AWS和ROUTE 53,因此感谢您的帮助。

我在GitHub上创建了一个组织,然后为一个静态站点创建了一个简单的存储库,以便与Github页面一起显示。这工作正常,我可以在Github生成的URL上看到静态站点(类似于:https://<githubOrgName>.github.io/<repoName>/)

我从AWS获得了一个域,现在我正在尝试设置它,以便顶端域(例如";my-domain.com";)指向Github Pages站点。

我按照https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages上的说明操作...但它似乎不起作用。

我正在尝试这样做,以便顶端域名指向存储库Github页面。类似于:

https://my-domain.com -> https://<githubOrgName>.github.io/<repoName>/

.但这只在我转到根域(";my-domain.com";)时才显示空白屏幕。我也试着去https://my-domain.com/<repoName>/...但这向我显示了一个Github 404页面(因此它似乎正确地向Github转发了一些东西):

我的AWS Route 53配置类似于以下内容(我已尝试删除敏感详细信息):

有人能给我解释一下我做错了什么吗?我刚开始使用域名,所以非常感谢您的帮助。

推荐答案

单独使用Route53对您没有帮助,因为您的目标URL包含URL路径,即/<repoName>/

DNS是一个名称解析系统,对HTTP一无所知

此外,源服务器(github.io)可能正在运行反向代理,该代理可能正在解析请求标头,其中包括Host标头。您的浏览器会自动将此标题设置为您提供给它的URL。最后,您向它发送了错误的头(即https://my-domain.com/),Github无法处理该头。您可以将此标头(例如,通过curl)显式设置为Github所期望的,但我相信这不是您和您的用户所希望的。

相反,您可以借助Lambda@Edge(由AWS CloudFront提供)尝试使用第7层重定向(301/302)。我已经使用无服务器框架创建了一个简单的solution,它执行以下重定向:

https://maslick.tech     ->  https://github.com/maslick
https://maslick.tech/cv  ->  https://www.linkedin.com/in/maslick/
https://maslick.tech/qa  ->  https://stackoverflow.com/users/2996867/maslick
https://maslick.tech/ig  ->  https://www.instagram.com/maslick/

但您可以根据需要调整handler.js进行自定义。您可能还需要在us-east-1区域使用AWS证书管理器创建免费的TLS证书,并将其附加到您的CloudFront分发。但这是可选的。

Lambda@Edge将提供低延迟,因为您的重定向将从全球各地的CloudFront边缘位置提供服务。

这篇关于AWS Routing 53域名指向Github页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆