GitHub Pages 自定义域名实践整理
这篇博客将整理在配置博客以及项目 Pages 的自定义域名过程,遇到的问题以及解决方法。Github 的文档对于如何配置自定义域名有详细的介绍,这里不会全部翻译,只重点记录实践的过程,内容涉及为用户网站,公司网站,以及项目网站添加 Apex
域名(qiwihui.com),二级域名(www.qiwihui.com)以及开启 HTTPS。最后,所有指向 www.qiwihui.com
的请求将会被重定向至 https://qiwihui.com
。
<!--more-->
一些注意
Github 支持的自定义域名类型
支持的自定义域名类型 | 域名例子 |
---|---|
www subdomain |
www.example.com
|
one apex domain & one www subdomain |
example.com & www.example.com
|
apex domain |
example.com
|
custom subdomain |
blog.example.com
|
GitHub Pages 站支持的域名
GitHub Pages 站类型 | 在 Github 上 Pages 的默认域名和主机地址 | 页面被如何重定向 | 自定义域名举例 |
---|---|---|---|
User Pages 站 |
username.github.io
|
自动重定向到设置的自定义域名 |
user.example.com
|
Organization Pages 站 |
orgname.github.io
|
自动重定向到设置的自定义域名 |
org.example.com
|
用户拥有的 Project Pages 站 |
username.github.io/projectname
|
自动重定向到 User Pages 站自定义域名的子目录(user.example.com/projectname )
|
project.example.com
|
公司拥有的 Project Pages 站 |
orgname.github.io/projectname
|
自动重定向到 Organization Pages 站自定义域名的子目录(org.example.com/projectname )
|
project.example.com
|
以个人 Pages 项目为例子
开启 Github Pages 功能
在项目 Settings
中,找到 GitHub Pages
这一区域,选择 Source
为对应的要部署的分支,这里我选择 gh-pages branch
:
其中,选择 master branch
会视 /README.md
为 web 的 index.html
,选择 master branch /docs folder
会视 /docs/README.md
为 web 的 index.html
。
在项目配置中自定义域名
在 Custom domain
中添加自己的域名并保存:
或者,在项目分支中添加 CNAME
文件,CNAME
文件的内容为
qiwihui.com
这里推荐第二种,尤其对于有设置 CI 的项目,因为 CI 上将第一种设置覆盖。
这一步是比较重要却又容易忽视的一步:
- 如果添加到 GitHub Pages 中的是
qiwihui.com
,那么www.qiwihui.com
会被重定向到qiwihui.com
; - 如果添加到 GitHub Pages 中的是
www.qiwihui.com
,那么qiwihui.com
会被重定向到www.qiwihui.com
;
这里我选择重定向到 www.qiwihui.com
,所以设置为 qiwihui.com
添加 DNS 记录
为了能设置Apex
域名,需要在 DNS 中配置 A 记录指向 github 的 IP:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
同时,设置 CNAME
记录将 www.qiwihui.com
指向 qiwihui.github.io
,即 <你的 github 用户名>.github.io
。对于公司来说,这个地址是 <公司名称>.github.io
。
确认 DNS 记录
以下是设置好之后的 DNS 记录情况:
$ dig +noall +answer qiwihui.com
qiwihui.com. 60 IN A 185.199.111.153
qiwihui.com. 60 IN A 185.199.110.153
qiwihui.com. 60 IN A 185.199.108.153
qiwihui.com. 60 IN A 185.199.109.153
$ dig www.qiwihui.com +nostats +nocomments +nocmd ; <<>> DiG 9.10.6 <<>> www.qiwihui.com +nostats +nocomments +nocmd
;; global options: +cmd
;www.qiwihui.com. IN A
www.qiwihui.com. 28 IN CNAME qiwihui.github.io.
qiwihui.github.io. 28 IN A 185.199.110.153
qiwihui.github.io. 28 IN A 185.199.108.153
qiwihui.github.io. 28 IN A 185.199.111.153
qiwihui.github.io. 28 IN A 185.199.109.153
SSL(HTTPS)配置,强烈推荐开启
勾选 Enforce HTTPS
Github 会自动保持 HTTPS 证书的有效。
项目 Pages
当给项目设置 Pages 时,一般都已经有一个个人或者公司的 Pages 了,如果没有,就可以按以上的过程添加。如果已经设置了,则只需要很简单的两步即可:
以下以个人项目 [qiwihui/fullstackpython.com](https://github.com/qiwihui/fullstackpython.com)
,设置地址为 fullstackpython.qiwihui.com
- 在项目中开启 Github Pages,并添加
CNAME
文件指向fullstackpython.qiwihui.com
:
- 在 DNS 记录中添加 CNAME 记录将
fullstackpython.qiwihui.com
指向qiwihui.github.io
,即<你的 github 用户名>.github.io
。对于公司来说,这个地址是<公司名称>.github.io
。
一段时间后即可。
参考
- Using a custom domain with GitHub Pages
- Custom domain redirects for GitHub Pages sites
- Custom domain for GitHub project pages 的回答
- Custom subdomains in GitHub project pages
GitHub Pages 自定义域名实践整理相关推荐
- GitHub Pages自定义域名如何支持https
就在前不久,GitHub Pages开放了自定义域名支持HTTPS.这意味着广大用GitHub Pages搭建个人博客的同学们有福了,不用再自己买证书或借用第三方服务,就能开启网址左边的小绿锁啦,非常 ...
- 【前端】Github Pages 与域名关联简明教程
Github Pages 与域名关联简明教程 1. 向你的 Github Pages 仓库添加一个CNAME(一定要*大写*)文件 其中只能包含一个顶级域名,像这样: example.com 如果你是 ...
- github pages + Hexo + 域名绑定搭建个人博客增强版
概述 前面我们用github pages + Hexo 搭建了一个简单版的个人博客系统,但是里面的内容单调,很多功能不够完善,所以我们需要对yelle 的主题进行优化和完善.基本搭建请访问:http: ...
- Github pages个人域名添加SSL
欢迎访问我的个人博客: https://赵旗.top/ 前言 寒假的时候用Hexo+Github pages搭建了属于自己的博客,前不久才绑定了个人域名.作为一名有强迫症的程序猿,肯定还要给自己加一个 ...
- 用hexo+github pages+独立域名搭建个人博客
摘要 用hexo建立博客这个教程,查阅了很多资料,自己倒腾了两三个小时弄好了. 现在简单记录下,以便不时之需.欢迎来我的博客 https://www.heson10.com 基本环境 Window10 ...
- Gandi下配置Github pages的自定义域名
用自定义网址去替换username.github.io.,因为自己有这样的需求,但是在网上看到的大多都不适用,所以整理下正确的三步方法. 在Gandi购买的.me域名username.me,托管在Gi ...
- GitHub Pages 绑定域名
域名选购 域名注册商有很多,国内的万网,国外的 GoDaddy 等等.区别在于国内域名注册后需要备案,因为政策因素也可能随时被停用,相对的,国外注册域名在交流和沟通方面不如国内方便,而因为没有国内的政 ...
- Hexo在Github中搭建博客系统(7)万网域名解析到Github Pages
在万网上买域名是相对便宜的,如何直接将域名指向Github Pages呢? 一.购买域名 选域名 登录阿里云万网,根据你自己想好的域名去查询那些网站可以购买. 如果是个人网站,一般以姓名全拼进行注册, ...
- CSDN博客自定义域名以及解析自己的域名到CSDN
文章目录 注册一个域名 申请github账号 设置GitHub Pages 购买域名及域名解析 添加CNAME 大功告成 使用CSDN发布博客文章,但是有一个小问题就是,如果我给别人推荐我的文章,又想 ...
最新文章
- 这 10 道 Spring Boot 常见面试题你需要了解下
- php如何判断用户是从指定页面跳转进来的
- sklearn-GridSearchCV调节超参数
- ubuntu如何安装linux驱动程序,Ubuntu下如何安装驱动程序和应用软件?
- 2020年Java程序员应该学习的10大技术
- 如何优雅的理解ECMAScript中的对象
- clion windows安装
- 关系数据库的基本概念和MySQL说明
- spring boot整合cxf发布和调用webservice
- 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!在eclipse.ini中为eclipse指定jdk启动...
- selenium:解决页面元素display:none的方法
- 2017c语言自学贴吧,【图片】17年1.9开启我的C语言学习之路—小白篇【c语言吧】_百度贴吧...
- 进程间通信-----管道
- python学习第六天运算符总结大全
- matlab可以实现OCR吗,OCR2 OCR功能matlab实现,基本上只能识别纯色背景的内容 Other systems 其他 238万源代码下载- www.pudn.com...
- McAfee软件下载与安装
- php 超出整形范围,频率超出范围怎么办
- SVN上文件出现左侧黄色箭头右侧绿色箭头的双向箭头
- 分布式事务_实施分布式锁概述
- 什么是UNIX时间戳? 时间戳有什么用?