淺談github頁面域名綁定

來源:http://yanping.me/cn/blog/2011/12/04/github-pages-domain/html

前段時間看到COS上的各位都有博客,也想開個博,給COS的各位管理員發郵件,向他們請教如何開個像怡軒和太雲那樣的博客,思喆兄說要向益輝申請空間和cos的二級域名。無奈老大太忙,遲遲沒有給我分配空間和域名,只是某次提到有個叫github的東西,能夠在上面建網頁,還能夠寫博客,寫博客還能夠不用網絡哦親,只要在本地寫好,哪天有網絡了就一個push過去哦親,so fashion!1因而我又給他寫了不少郵件,向他請教如何使用該系統,結果,他仍是不回覆。得,本身研究吧。git

關於如何在github上建立頁面本文就不講了,文章末尾會列出參考文獻,本文着重介紹github頁面的域名綁定問題。 github pages的官方主頁這樣說:github

  • 假設你github的用戶名爲username,那麼建立一個名爲username.github.com的代碼庫(repository),在這個庫中上傳html、CSS等靜態頁面文件,能夠用地址 http://username.github.com來訪問頁面了,這個頁面就是你帳戶的主頁面(User pages)。
  • 若是你又建立了個叫repo的代碼庫,在它下面的gh-pages分支裏上傳了html、CSS等靜態頁面文件,那麼用http://username.github.com/repo這個地址就能訪問頁面了。
  • 要想生成複雜點的頁面,能夠用jekyll,語法高亮用pygments 。
  • 要想域名綁定,在代碼庫的根目錄下放一個CNAME文件就好了,文件裏寫上想要綁定的域名,而後在域名DNS管理的後臺網站創建指向就行。若是想把頁面綁定到二級域名,須要建立一個CNAME指向。若是要把頁面綁定到頂級域名,須要建立一個A指向。不能用CNAME指向頂級域名,不然會形成衝突。

如今問題就來自上面的最後一條,當我創建了個用戶頁面 http://username.github.com並把它的域名綁定爲頂級域名example.com以後,我帳戶下全部代碼庫頁面都變成了example.com下面的二級目錄。我想這多是由於代碼庫頁面原來的網址爲http://username.github.com/repo,DNS把http://username.github.com解析成了http://example.com。請看 https://github.com/lmorchard,他在github上有兩個博客, http://decafbad.com/skein 和 http://decafbad.com/blog/ windows

然而當我把用戶頁面的域名綁定爲二級域名http://sub.example.com以後,全部代碼庫的頁面都404了。因此我仍是建議把頂級域名綁定到用戶頁面,這樣代碼庫頁面也可以正常訪問。 今天又試了一下,我把用戶頁面的域名綁定爲二級域名,項目頁面仍是能夠顯示的,依然是二級目錄的形式。明天我再試試換過來會怎麼樣。markdown

若是我不給用戶頁面綁定域名,或者乾脆不建立用戶頁面,是否是能夠給代碼庫頁面綁定域名呢?答案是否認的,由於A指向須要提供個IP地址,CNAM須要指向個域名,而不能是http://username.github.com/repo的形式。網絡

若是想充分利用你的域名和子域名,我暫時能想到的就是多開幾個github帳戶吧,關於一臺電腦上多個github帳戶的操做,網上有現成的教程,我會在之後整理出來。dom

我也注意到github也有例外,請看http://gitready.com/這個網站,它在github上的代碼地址是http://github.com/gitready/gitready/ , 能夠看到它還有別的語言版本,域名分別是http://de.gitready.com/http://fr.gitready.com 。。。 這是怎麼作到的呢? 我注意到,它這個目錄下沒有master分支,是跟這個有關嗎? 目前尚未獲得做者的回覆,也從知曉。感興趣的同窗們來研究一下吧。wordpress

快速應用

jekyll對初學者太難掌握,有人推薦使用octopresstoto或者pop等基於Jekyll的靜態博客站點生成系統2,它很大程度上簡化了用Jekyll搭建博客的過程。惋惜這些系統在windows下都不能順暢使用,我也沒試成功。使用Linux的同窗能夠試一試。在windows下使用Octopress的教程請看個人博客文章工具

參考文章:

Github Pages 基於Jekyll搭建本身的博客 像黑客同樣寫博客 使用github做爲博客引擎 Alex Rothenberg - Moved Blog to Jekyll and GitHub Pages github教程《GoGitHub》 輕量級博客工具: Jekyll vs ToTo 使用 Octopress + GitHub 免費架設部落格,以 Markdown 語法快速發表文章 Hello octopress Bye-bye WordPress. Hello Octopress!網站

相關文章
相關標籤/搜索