Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I use Jekyll with my domain, but hosted on GitHub?

Tags:

dns

jekyll

cname

I would like to switch from WordPress to Jekyll. I already have migrated the articles (see new Jekyll articles + rendered page and old WordPress site).

Now I would like to have the old URLs:

Old URL        :      http://martin-thoma.com/word-error-rate-calculation/
Current new URL: http://martinthoma.github.io/word-error-rate-calculation/

So this question is really only about the top level domain. My provider (called "Knallhart") should only "hold" the domain martin-thoma.com (GitHub does not offer this, do they?) and GitHub should serve the content.

When a user enters http://martin-thoma.com/word-error-rate-calculation/ or http://martinthoma.github.io/word-error-rate-calculation/ the browser should show http://martin-thoma.com/word-error-rate-calculation/, although the content is at GitHub.

I know the GitHub page Setting up a custom domain with Pages, but I still don't understand what I should do.

I've tried adding a CNAME file with content martin-thoma.com to my GitHub repository, but this only lead to an redirect from martinthoma.github.io to martin-thoma.com. I've just tried adding a CNAME with content martinthoma.github.io on the webspace provided by Knallhart. This seems to have no effect.

I think I have to change something on GitHub as well as with Knallhart. GitHub has to know that it should display martin-thoma.com and Knallhart has to redirect to the content. But I don't understand how to do this. What do I have to change on GitHub and what do I have to do on side of my provider?

Can I do this by my own or do I need support from Knallhart? I currently have a quite cheap plan that basically only offers Hosting+PHP+MySQL. If I pay 6€ more, I get a Zone-Modul (which has the description "DNS controll for your domain"). Do I need a Zone-Modul?

like image 866
Martin Thoma Avatar asked Jan 01 '14 10:01

Martin Thoma


People also ask

Can I use my own domain with GitHub?

On GitHub, navigate to your site's repository. Under your repository name, click Settings. In the "Code and automation" section of the sidebar, click Pages. Under "Custom domain", type your custom domain, then click Save.

How do I link my domain to my GitHub repository?

On your site's repository, click the settings tab . Under custom domain, type your custom domain and save. GitHub will automatically create a commit with a CNAME file at the root of your repository. Visit the dashboard provided by your domain provider and add a CNAME record pointing to your subdomain.

Does GitHub use Jekyll?

GitHub Pages are public web pages for users, organizations, and repositories, that are freely hosted on GitHub's github.io domain or on a custom domain name of your choice. GitHub Pages are powered by Jekyll behind the scenes, so they're a great way to host your Jekyll-powered website for free.


1 Answers

As the HELP PAGE said:

For a domain like example.com, you should use an A record pointing to 204.232.175.78:

In your case, you need to create an A record for martin-thoma.com, take mine as an example (I don't use Knallhart, maybe it's different, just make sure you make a A record to 204.232.175.78, which Github offers):

Host               |record type | host/IP  
*.kjuly.com         A             204.232.175.78 (Edit: NOT Recommended)  
@.kjuly.com         A             204.232.175.78  

Note: CNAME record is for subdomains like dev.martin-thoma.com.


EDIT (IMPORTANT):

Depend on the Github's official blog post "GitHub Pages Legacy IP Deprecation", the 204.232.175.78 is deprecated, you should use 192.30.252.153 or 192.30.252.154 instead.

Host               |record type | host/IP  
@.kjuly.com         A             192.30.252.153  
like image 71
Kjuly Avatar answered Nov 15 '22 06:11

Kjuly