웹 프로그램을 개발하고 테스트하는 데는 아무런 문제없지만 다른 사람이 쓸 수 있도록 배포하고자 할 경우에 웹서버를 운영하는 것에 어려움이 있다. 직접 서버를 운영하려면 항상 서버용 컴퓨터가 켜져 있어야 하기 때문에 부담스러운 일이다. 다행히 깃허브를 이용하면 무료로 웹호스팅 기능을 사용할 수 있다는 걸 알게 되었다.

 

방법

우선 Repositories를 새로 만들어야한다. 'New' 버튼을 눌러 새로운 저장소를 만든다.

다음과 같이 저장소 이름을 정한 다음 'Create repository' 버튼을 눌러 저장소를 생성한다.

웹 서버가 클라이언트에게 보여줄 페이지가 필요하니 html 파일을 저장소에 업로드하기 위해 'Upload files' 버튼을 누른다.

다음과 같은 내용의 index.html 파일을 업로드 한다.

<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
      <h1>
        Hello
      </h1>
    </body>
</html>

 깃허브에서 변경된 사항을 업로드하기 위해서는 변경 사항을 설명하는 comment를 쓰고 'Commit Changes' 버튼을 눌러 변경 사항을 저장한다.

html 파일을 업로드한 후에 'Settings' 버튼을 누른다.

세팅 페이지에서 스크롤을 아래로 내리면 다음과 같이 GitHub Pages라는 부분을 볼 수 있다. None이라고 쓰인 부분을 누른다.

master branch 부분을 누른다.

성공적으로 등록이 된 경우 다음과 같이 주소가 나타난다.

주소를 통해 내가 올린 index.html 파일의 내용을 확인할 수 있다. 

 

https://hynjin.github.io/testForWebHosting/

 

hynjin.github.io

 

 

 

 

도메인 이름 변경

도메인을 <username>.github.io 외에 다른 것으로 하고자 할 경우 아래와 같은 방법이 있다.

생활코딩에서 이에 대한 자세한 설명을 제공하고 있다.

 

github pages에 도메인 연결하기 - 생활코딩

수업소개 나의 서버가 아닌 타사의 서비스를 이용하는 경우에 그 서비스에 도메인 이름을 연결시키는 방법을 알아봅니다. 티스토리나 카페 24 쇼핑몰과 같은 서비스에도 적용되는 방법입니다.  강의

opentutorials.org

 

깃허브 도메인 이름 변경 방법 설명

 

Managing a custom domain for your GitHub Pages site - GitHub Help

GitHub.com GitHub Pages Configuring a custom domain for your GitHub Pages site Managing a custom domain for your GitHub Pages site Managing a custom domain for your GitHub Pages site You can set up or update certain DNS records and your repository settings

help.github.com

깃허브 도메인 이름 변경에 문제가 생겼을 경우

 

Troubleshooting custom domains and GitHub Pages - GitHub Help

GitHub.com GitHub Pages Configuring a custom domain for your GitHub Pages site Troubleshooting custom domains and GitHub Pages Troubleshooting custom domains and GitHub Pages You can check for common errors to resolve issues with custom domains or HTTPS fo

help.github.com

단점

기본적으로 깃허브의 웹호스팅은 정적(static) 사이트만을 지원한다. 즉, php나 python 같은 언어로 웹사이트를 구현한 경우 '405 Not Allowed'와 같은 에러를 마주하게 된다.

이러한 문제를 해결하기 위해 깃허브는 지킬(Jekyll)을 built-in support를 추천한다. 이는 Ruby로 된 웹사이트에 특히 적합하다.

 

About GitHub Pages and Jekyll - GitHub Help

GitHub.com GitHub Pages Setting up a GitHub Pages site with Jekyll About GitHub Pages and Jekyll About GitHub Pages and Jekyll Jekyll is a static site generator with built-in support for GitHub Pages. GitHub Pages is available in public repositories with G

help.github.com

파이썬의 경우에는 펠리칸(Pelican)이 적합한 편이라고 한다. 다음 사이트에서 펠리칸의 설치과 사용 방법에 대해 자세히 알 수 있다.

 

Run your blog on GitHub Pages with Python

Create a blog with Pelican, a Python-based blogging platform that works well with GitHub.

opensource.com

 

참고

생활코딩, 웹호스팅(github pages), https://opentutorials.org/course/3084/18891

+ Recent posts