绑定域名到 GitHub Pages
简介
我在阿里云上注册了一个新域名:yuanzb.com,我已经在GitHub Pages上建立了自己的博客:http://yuanzb.github.io/yuanzb/。现在我希望将yuanzb.com映射到。主要参考资料:
Setting up a custom domain with GitHub Pages
创建GitHub技术博客全攻略 - 第九部分:CNAME绑定域名
Hexo在github上构建免费的Web应用 - 第4.3节:设置域名
第一步:创建CNAME文件夹
在你的个人博客仓库的根目录中新建文件CNAME(注意没有后缀),在该文件增加一行文字,告诉Github Pages服务器你想指定的域名。该域名不能包含前缀信息,即不能添加http:\\前缀。
!重要补充!CNAME文件名一定要大写,否则Github Pages服务器无法识别和解析。我就出现了这样的问题。我的CNAME绑定域名是正确的,通过ping yuanzb.com和ping yuanzb.github.io两条指令,我发现了他们都指向同一个IP地址(即我的博客IP地址),可是我在使用浏览器访问的时候,会出现Site not Found提示,这个时候我就只能合理的怀疑Github Pages服务器根本就没有把yuanzb和yuanzb.github.io绑定起来,即我的CNAME文件设置错误。Google之后发现CNAME文件名的大小写会产生影响(My custom domain isn't working),万恶的Windows系统不区分文件名大小写,所以即使你在本地更改了CNAME大小写然后push到github,还是没有用。。。我就只好到github上去修改成大写了。。。坑。。。
每个CNAME文件能且只能指定一个域名。更多关于增加CNAME文件的信息可见Adding a CNAME file to your repository。
第一步的目的是,Github读取你的CNAME之后,Github服务器会设置yuanzb.me为你的主域名,然后将yuanzb.github.io重定向到yuanzb.com。
第二步:CNAME绑定域名
登录阿里云单域名控制台,在域名解析中添加如图所示的解析
默认使用阿里云提供的万网DNS服务器。当然你也可以使用DNSPOD提供的DNS服务器,这样可以使你的域名在国外更快速的传播。当你使用DNSPOD提供的DNS服务器时,除了DNS服务器不一样以外,其他的设置(比如A记录和CNAME记录)均相同。以下我们简要分析我们所添加的A记录和CNAME记录的含义。
在域名解析中,A记录就是直接指定一个IP,CNAME就是重命名,指向另一个域名。
在阿里云控制台,设置主机记录www,记录类型为A,记录值是IP192.30.252.153。其中192.30.252.153是Github Pages服务器指定的IP地址,访问该IP地址即表示访问Github Pages。
在阿里云控制台,设置主机记录www,记录类型为A,记录值是IP192.30.252.154。同上。
在阿里云控制台,设置主机记录@,记录类型为CNAME,记录值是yuanzb.github.io.。表示将http://yuanzb.com这个主域名映射yuanzb.github.io。在这里千万不要忘记记录值中.io后面还有一个点.!
但是很多时候,我们只想将子域名绑定到博客地址。比如如果你想将blog.yuanzb.com(即博客子域名地址,主域名地址是www.yuanzb.com)映射到yuanzb.github.io,那么在主机记录中就应该填写blog,记录类型为CNAME,记录值是yuanzb.github.io。因为你的主域名已经默认为yuanzb.com,所以主域名和主机记录合起来就是blog.yuanzb.com。而且这个时候,你github项目的CNAME文件内容也应该相应的改为blog.yuanzb.com,因为你是想将yuanzb.github.io和blog.yuanzb.com绑定起来,而不是和www.yuanzb.com绑定。
start": "react-native-scripts start",
"eject": "react-native-scripts eject",
"android": "react-native-scripts android",
"ios": "react-native-scripts ios",
"test": "node node_modules/jest/bin/jest.js",
"lint": "tslint src/**/*.ts",
"tsc": "tsc",
"clean": "rimraf build",
"build": "yarn run clean && yarn run tsc --",
"watch": "yarn run build -- -w",
"watchAndRunAndroid": "concurrently \"yarn run watch\" \"yarn run android\"",
"buildRunAndroid":www.dasheng178.com/ "yarn run build && yarn run watchAndRunAndroid ",
"watchAndRunIOS": www.thd540.com/"concurrently \"yarn run watch\" \"yarn run ios\"",
"buildRunIOS": "yarn run build && yarn run watchAndRunIOS ",
"watchAndStart": "concurrently \www.quwanyule157.com"yarn run watch\" \"yarn run start\"",
"buildAndStart": www.feifanyule.cn/"yarn run build && yarn run watchAndStart "
如果你想将www.yuanzb.com(即主域名地址)映射到yuanzb.github.io,那么主机记录就是www,记录类型是A,记录值是具体的IP地址(在我们这个例子中是192.30.252.153、192.30.252.154)。因为你的主域名已经默认为yuanzb.com,所以主域名和主机记录合起来就是www.yuanzb.com。
你可以将多个域名都映射到xxxxx.github.io之类的你自己的站点上,但是需要新建不同内容的CNAME文件。
注意,.me已经是顶级域名(和.com、.org等域名是同一级的),所以需要使用A记录进行域名解析。
第二步的目的是,告诉所有DNS服务器,对于yuanzb.me的访问都会被重定向到yuanzb.github.io。
第三步:漫长的等待
要全球解析生效,得等上一会了,也可以先ping一下自己的设置对不对。阿里云域名服务的工作原理是,在你更新了域名解析之后,首先是阿里的万网云解析,然后传播到各大运营商的DNS服务器,刷新DNS缓存,至此你的域名可以被访问。
绑定域名到 GitHub Pages的更多相关文章
- 为添加了自定义域名的GitHub Pages添加SSL,启用强制HTTPS(小绿锁)
直奔主题 为什么要使用https协议? 提高网站访问安全性,网络连接都是加密的 (PS:虽然SSL并不是无懈可击的,但是我们应该尽可能提高窃听成本). 目前越来越多的浏览器会判断当前站点支不支持htt ...
- github pages绑定域名
网上很多人问 github 绑定域名要不要备案,很多人的回答是: 国内主机需要备案,国外主机不用 这个说法是没错的,但是却没有直接回答出 github pages 是否需要备案! 首先声明 githu ...
- 博客Hexo + github pages + 阿里云绑定域名搭建个人博客
申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...
- Hexo + github pages + 阿里云绑定域名搭建个人博客
申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...
- 使用Github Pages建独立博客
http://beiyuu.com/github-pages/ Github很好的将代码和社区联系在了一起,于是发生了很多有趣的事情,世界也因为他美好了一点点.Github作为现在最流行的代码仓库,已 ...
- 使用Github Pages创建自己的网站
这是一篇使用Github Pages创建自己网站的教程,操作很简单,相信,亲们肯定一学就会,但是大家也要有一定的github基础呀,所以小编给大家附上一个链接(http://www.cnblogs.c ...
- github pages部署静态网页
如果你的项目只是一个静态网站,就没有必要再去整什么服务器,github pages 提供了搭建静态网站的功能: 为什么使用Github Pages 1. 搭建简单而且免费: 2. 支持静态脚本: 3. ...
- 【前端】Github Pages 与域名关联简明教程
Github Pages 与域名关联简明教程 1. 向你的 Github Pages 仓库添加一个CNAME(一定要*大写*)文件 其中只能包含一个顶级域名,像这样: example.com 如果你是 ...
- github pages + Hexo + 域名绑定搭建个人博客
环境 Windows 10(64 位) Git-2.7.4-64-bit node-v4.4.7-x64 如果上述软件已经安装的,跳过,没有安装的下载安装. 1,git下载安装(https://git ...
随机推荐
- 总结JavaScript常用数组操作方法,包含ES6方法
一.concat() concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,仅会返回被连接数组的一个副本. var arr1 = [1,2,3]; var arr2 = [4,5]; ...
- P2661 信息传递 DFS
题目链接:洛谷 P2661 信息传递 一个人要想知道自己的生日,就意味着信息的传递是成环的,因为每轮信息只能传递一个人,传递的轮数就等于环的大小 环的大小就等于环中的两个点到第三个点的距离之和加一,我 ...
- leetcode笔记(二)94. Binary Tree Inorder Traversal
题目描述 (原题目链接) Given a binary tree, return the inorder traversal of its nodes' values. For example:Giv ...
- opencms研究笔记
最近公司一新产品,众多选型之后: 最后还是准备在用opencms 在opencms的基础上,进行二次开发: 有一起研究的没 欢迎交流:
- 云计算之KVM虚拟化实战
1 基础环境规划 1.1 主机环境规划 系统版本 主机名 IP地址 内存 磁盘 CentOS6.9 kvm-node1 10.0.0.200 2G 20G CentOS6.9 kvm-node2 10 ...
- is和==,encode和decode
0.编码解码 >encode和decode a = "你好" s = a.encode("GBK") print(s) # b'\xc4\xe3\xba\ ...
- thinkphp5控制器向+vue的data里传值
传一维数组传值 $array=['id'=>40,"cat_name"=>"明星产品"]; $MenuCats_info=json_encode($ ...
- linux学习(2)——文件和目录管理
(二) 一:绝对路径和相对路径 ...
- POJ:2385-Apple Catching(dp经典题)
Apple Catching Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 14311 Accepted: 7000 Descr ...
- python, 面向对象编程Object Oriented Programming(OOP)
把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行.为了简化程序设计,面向过程把函数继续切分为子函数,即把大块函数 ...