将GoDaddy DNS指向GitHub页面使用http over https

4ks*_*hay 6 dns ssl https ssl-certificate github-pages

我有DNS设置,如图像DNS设置中所示, 还有一个额外的CNAME,主机www和值作为我的GitHub页面.接下来,我在GitHub页面中设置了一个CNAME条目,其中包含我的域的顶点条目.我面临的问题是,每当我使用https协议访问我的域时,它都会显示连接不安全的警告.我在Chrome中获得以下内容:

NET :: ERR_CERT_COMMON_NAME_INVALID

我该如何解决?我的域名都有https和http访问权限.

Ulf*_*lak 10

更新:Github于2018年5月1日为HTTPS引入了自定义域支持.

如果您使用的是GoDaddy并希望升级到HTTPS,请执行以下操作:

  1. 在GoDaddy帐户中转到您网站的DNS设置.
  2. 删除所有现有的A记录.
  3. 打开一个终端然后做dig +noall +answer <YOUR-USERNAME>.github.io.您应该看到一个列出4个略有不同的IP地址的表:在此输入图像描述
  4. 在GoDaddy上,创建4条新A记录,每条记录指向一个IP.对于主机使用@并将TTL设置为低用户定义值(如果您赶时间).
  5. 转到Github上的页面存储库设置,并清除自定义域名并保存.等一会儿(几分钟).
  6. 执行时会dig +noall +answer <YOUR-CUSTOM-DOMAIN>生成您在A记录中输入的4个IP地址,请返回Github存储库设置,然后在自定义域单元格中重新输入并保存您自定义的域名(刚刚清除).
  7. (可选)选中" 强制HTTPS "复选框.但要确保https://<YOUR-DOMAIN>首先是响应.

    • 确保您的DNS设置中也有CNAME记录.主持人应该是www,它应该指向你的<YOUR-USERNAME>.github.io.
    • 确保您的网站存储库中有一个名为CNAME包含自定义域名的文件(在我的例子中ulfaslak.com).

参考

  • 我逐字按照您的步骤操作,但当我进行到步骤 7 时,该复选框并未启用。它在禁用的复选框旁边指出我应该等待 24 小时才能颁发证书。也许这个案例有助于添加您的步骤? (2认同)

小智 7

编辑:请参阅Arturo Herrero的回答

GitHub页面不支持自定义域的HTTPS.

这样做的唯一方法是使用SSL提供程序作为中间人,例如Cloudflare.但是,这将涉及将您的DNS名称服务器指向Cloudflare,这需要一些时间并使事情变得复杂.

如果您希望使用GitHub页面支持HTTPS,则必须使用GitHub提供的URL而不是自定义域.

如果您想要自定义域名HTTPS,静态站点的另一个很好的选择是Amazon Web Services.您可以为静态网站设置S3存储桶,配置CloudFront以分发静态内容,将您的域名指向CloudFront分配,以及使用Amazon的证书管理器提供的免费SSL证书.流量较低的网站,此选项低于1美元/月.一个伟大的深度教程将在这里.

我希望这能回答你的问题!GitHub页面是一个很好的托管选项,如果您决定忘记HTTPS,它不是世界末日.

  • 我正在使用Cloudflare,但我想知道我是否可以不用.由于关于相同的所有其他帖子都很老,我希望现在情况会有所改变.无论如何,谢谢你的回答. (2认同)

Art*_*ero 5

自 2018 年 5 月 1 日起,GitHub Pages 上的自定义域获得对 HTTPS 的支持

https://blog.github.com/2018-05-01-github-pages-custom-domains-https/