Enable https for github pages with cloudflare
Github pages currently does not support https for blogs that use custom domain name, and here is what CloudFlare comes to a rescue.
Simple steps and instructions
- Register cloudflare account and add your custom domain;
- Go to domain registrar site and change dns servers to what cloudflare provides;
- Migrate dns resolving records to cloudflare (from previous/old domain registrar site);
- Ensure ssl setting is set to "Flexible SSL" on cloudflare setting;
Post-procedures
- Modify github pages "_config.yml" (e.g. jekyll powered)
url: https://your-domain-name # with the https protocol
enforce_ssl: your-domain-name # without any protocol
- Create cloudflare page rules to redirect http to https
$ http://*your-domain-name/*
$ => always use ssl
- Update static resources (css/js/html/image/etc) to use https url
References
- Set Up SSL on Github Pages With Custom Domains for Free
- How to host your static site with HTTPS on GitHub Pages and CloudFlare