绑定域名到 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 ...
随机推荐
- 开发必看 | iOS开发常用设计模式!
ios开发学习中,经常弄不清楚ios的开发模式,今天我们就来进行简单的总结和探讨~(一)代理模式 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现.优势:解耦合敏捷原则: ...
- pod 指令无效
到了新公司,配置pod,死活找不到pod指令,用了很多方法之后,找到了解决办法 sudo vim .bash_profile 然后添加 export PATH=/usr/local/bin:$PATH ...
- Java分享笔记:File类中常用方法的介绍
java.io包下的File类用于描述和创建一个文件或文件夹对象,只能对文件或文件夹做一些简单操作,不能修改文件的内容,功能比较有限.下面是对于File类中常用方法的程序演示. [1] 演示程序一 p ...
- pycharm界面美化,个人喜欢
进入file-setting选项 界面设置主要是在appearance和editor里面.appearance主要是整个pycharm的主题设置,比如文件管理窗口的颜色,其实就是软件本身的主题设置.我 ...
- 使用ansible安装配置zabbix客户端
ansible角色简介: 目录名 说明 defaults 默认变量存放目录 handlers 处理程序(当发生改变时需要执行的操作) meta 角色依赖关系处理 tasks 具体执行的任务操作定义 t ...
- JIRA 6.3的那些事(1):linux环境安装
一直以来,自认为对JIRA是还算比较熟悉 从3.x 就开始使用,然后用4.x 近期公司对BUG系统进行选型: 我极力推荐JIRA ! 然后,JIRA 的安装.部署.配置任务就给到我了: 本以为应该是 ...
- 430. Flatten a Multilevel Doubly Linked List
/* // Definition for a Node. class Node { public: int val = NULL; Node* prev = NULL; Node* next = NU ...
- [CodeForces948C]Producing Snow(优先队列)
Description 题目链接 Solution 将温度做一个前缀和,用一个优先队列依次处理一遍 思路还是很简单的 Code #include <cstdio> #include < ...
- 使用MD5比较两个文件是否相同
MD5算法:是计算机广泛使用的一种哈希算法,将数据(如汉字)运算为另一固定长度值,用于确保信息传输完整一致.java,C++ 等多种编程语言都有MD5的实现,可直接使用. 文件MD5值:每个文件都可以 ...
- 理解线程3 c语言示例线程基本操作
Table of Contents 1. 基本线程的动作 1.1. 设置线程属性 1.1.1. 设置脱离状态 1.1.2. 设置调度属性 1.2. 取消线程 1.3. 主线程创建多个线程示例 2. 了 ...