๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ํ ๊ด๋ฆฌ์ ๊ถํ์ด ์๋ ์ฌ์ฉ์๋ GitHub Pages ์ฌ์ดํธ์ HTTPS๋ฅผ ์ ์ฉํ ์ ์์ต๋๋ค.
HTTPS ๋ฐ GitHub Pages ์ ๋ณด
์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ์ผ๋ก ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋ ์ฌ์ดํธ๋ฅผ ํฌํจํ์ฌ ๋ชจ๋ GitHub Pages ์ฌ์ดํธ๋ HTTPS ๋ฐ HTTPS ์ ์ฉ์ ์ง์ํฉ๋๋ค. ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ ๋ฐ GitHub Pages ์ ๋ณด ๋ฐ ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ ๋ฐ GitHub Pages ๋ฌธ์ ํด๊ฒฐ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
GitHub Pages ์ฌ์ดํธ๋ ์ํธ ๋๋ ์ ์ฉ ์นด๋ ๋ฒํธ ์ ์ก๊ณผ ๊ฐ์ ์ค์ํ ํธ๋์ญ์ ์ ์ฌ์ฉํ๋ฉด ์ ๋ฉ๋๋ค.
๊ฒฝ๊ณ
์ฌ์ดํธ์ ๋ฆฌํฌ์งํ ๋ฆฌ๊ฐ ํ๋ผ์ด๋น์ธ ๊ฒฝ์ฐ์๋ GitHub Pages ์ฌ์ดํธ๋ ์ธํฐ๋ท์์ ํผ๋ธ๋ฆญ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค(ํด๋น ํ๋ ๋๋ ์กฐ์ง์์ ํ์ฉํ๋ ๊ฒฝ์ฐ). ์ฌ์ดํธ์ ๋ฆฌํฌ์งํ ๋ฆฌ์ ์ค์ํ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ ๊ฒ์ํ๊ธฐ ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ ๋ฆฌํฌ์งํ ๋ฆฌ ์ ๋ณด์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์ฐธ๊ณ ํญ๋ชฉ
RFC3280์ ์ผ๋ฐ ์ด๋ฆ์ ์ต๋ ๊ธธ์ด๊ฐ 64์์ฌ์ผ ํ๋ค๊ณ ๋ช ์ํฉ๋๋ค. ๋ฐ๋ผ์ ์ธ์ฆ์๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ง๋ค๋ ค๋ฉด GitHub Pages ์ฌ์ดํธ์ ์ ์ฒด ๋๋ฉ์ธ ์ด๋ฆ์ด 64์ ๋ฏธ๋ง์ด์ด์ผ ํฉ๋๋ค.
GitHub Pages ์ฌ์ดํธ์ HTTPS ์ ์ฉ
-
GitHub์์ ์ฌ์ดํธ์ ๋ฆฌํฌ์งํ ๋ฆฌ๋ก ์ด๋ํฉ๋๋ค.
-
๋ฆฌํฌ์งํ ๋ฆฌ ์ด๋ฆ ์๋์์ ์ค์ ์ ํด๋ฆญํฉ๋๋ค. "์ค์ " ํญ์ด ํ์๋์ง ์์ผ๋ฉด ๋๋กญ๋ค์ด ๋ฉ๋ด๋ฅผ ์ ํํ ๋ค์ ์ค์ ์ ํด๋ฆญํฉ๋๋ค.
-
์ฌ์ด๋๋ฐ์ โ์ฝ๋ ๋ฐ ์๋ํโ ์น์ ์์ ํ์ด์ง๋ฅผ ํด๋ฆญํฉ๋๋ค.
-
โGitHub Pagesโ์์ HTTPS ์ ์ฉ์ ์ ํํฉ๋๋ค.
์ธ์ฆ์ ํ๋ก๋น์ ๋ ๋ฌธ์ ํด๊ฒฐ(โ์ธ์ฆ์๊ฐ ์์ง ์์ฑ๋์ง ์์์ต๋๋คโ ์ค๋ฅ)
ํ์ด์ง ์ค์ ์์ ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ์ ์ค์ ํ๊ฑฐ๋ ๋ณ๊ฒฝํ๋ฉด ์๋ DNS ๊ฒ์ฌ๊ฐ ์์๋ฉ๋๋ค. ์ด ๊ฒ์ฌ๋ DNS ์ค์ ์ด GitHub์์ ์ธ์ฆ์๋ฅผ ์๋์ผ๋ก ๊ฐ์ ธ์ค๋๋ก ๊ตฌ์ฑ๋์ด ์๋์ง ํ์ธํฉ๋๋ค. ํ์ธ์ ์ฑ๊ณตํ๋ฉด GitHub๋ Let's Encrypt์์ TLS ์ธ์ฆ์๋ฅผ ์์ฒญํ๋ ์์ ์ ํ์ ๋๊ธฐ์ํต๋๋ค. ์ ํจํ ์ธ์ฆ์๋ฅผ ๋ฐ์ผ๋ฉด GitHub๊ฐ ํ์ด์ง์ ๋ํ TLS ์ข ๋ฃ๋ฅผ ์ฒ๋ฆฌํ๋ ์๋ฒ์ ์ธ์ฆ์๋ฅผ ์๋์ผ๋ก ์ ๋ก๋ํฉ๋๋ค. ์ด ํ๋ก์ธ์ค๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋๋ฉด ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ ์ด๋ฆ ์์ ํ์ธ ํ์๊ฐ ํ์๋ฉ๋๋ค.
์ด ํ๋ก์ธ์ค๋ ๋ค์ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์ต๋๋ค. ์ ์ฅ์ ํด๋ฆญํ๊ณ ๋ช ๋ถ ํ์๋ ํ๋ก์ธ์ค๊ฐ ์๋ฃ๋์ง ์์ ๊ฒฝ์ฐ ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ ์ด๋ฆ ์์ ์๋ ์ ๊ฑฐ๋ฅผ ํด๋ฆญํด ๋ณด์ธ์. ๋๋ฉ์ธ ์ด๋ฆ์ ๋ค์ ์ ๋ ฅํ๊ณ ์ ์ฅ์ ๋ค์ ํด๋ฆญํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ํ๋ก๋น์ ๋ ํ๋ก์ธ์ค๊ฐ ์ทจ์๋๊ณ ๋ค์ ์์๋ฉ๋๋ค.
ํผํฉ ์ฝํ ์ธ ๋ฌธ์ ํด๊ฒฐ
GitHub Pages ์ฌ์ดํธ์์ HTTPS๋ฅผ ์ฌ์ฉํ๋๋ก ์ค์ ํ์ง๋ง ์ฌ์ดํธ์ HTML์ด ์ฌ์ ํ HTTP๋ฅผ ํตํด ์ด๋ฏธ์ง, CSS ๋๋ JavaScript๋ฅผ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ ์ฌ์ดํธ๋ _ํผํฉ ์ฝํ ์ธ _๋ฅผ ์ ๊ณตํ๊ณ ์๋ ๊ฒ์ ๋๋ค. ํผํฉ ์ฝํ ์ธ ๋ฅผ ์ ๊ณตํ๋ฉด ์ฌ์ดํธ์ ๋ณด์์ด ์ ํ๋๊ณ ์์ฐ ๋ก๋์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ฌ์ดํธ์ ํผํฉ ์ฝํ
์ธ ๋ฅผ ์ ๊ฑฐํ๋ ค๋ฉด ์ฌ์ดํธ์ HTML์์ http://
๋ฅผ https://
๋ก ๋ณ๊ฒฝํ์ฌ ๋ชจ๋ ์์ฐ์ด HTTPS๋ฅผ ํตํด ์ ๊ณต๋๋์ง ํ์ธํฉ๋๋ค.
์์ฐ์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์ ์์น์์ ์ฐพ์ ์ ์์ต๋๋ค.
- ์ฌ์ดํธ์์ Jekyll์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ HTML ํ์ผ์
_layouts
ํด๋์ ์์ ์ ์์ต๋๋ค. - CSS๋ ์ผ๋ฐ์ ์ผ๋ก HTML ํ์ผ์
<head>
์น์ ์ ์์ต๋๋ค. - JavaScript๋ ์ผ๋ฐ์ ์ผ๋ก
<head>
์น์ ๋๋ ๋ซ๋</body>
ํ๊ทธ ๋ฐ๋ก ์์ ์์ต๋๋ค. - ์ด๋ฏธ์ง๋ ์ข
์ข
<body>
์น์ ์์ ์ฐพ์ ์ ์์ต๋๋ค.
ํ
์ฌ์ดํธ์ ์๋ณธ ํ์ผ์์ ์์ฐ์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ ํ
์คํธ ํธ์ง๊ธฐ ๋๋ GitHub์์ http
์ ๋ํ ์ฌ์ดํธ์ ์๋ณธ ํ์ผ์ ๊ฒ์ํด ๋ณด์ธ์.
HTML ํ์ผ์์ ์ฐธ์กฐ๋๋ ์์ฐ์ ์
์์ฐ ํ์ | HTTP | HTTPS |
---|---|---|
CSS | <link rel="stylesheet" href="http://example.com/css/main.css"> | <link rel="stylesheet" href="https://example.com/css/main.css"> |
JavaScript | <script type="text/javascript" src="http://example.com/js/main.js"></script> | <script type="text/javascript" src="https://example.com/js/main.js"></script> |
์ด๋ฏธ์ง | <a href="http://www.somesite.com"><img src="http://www.example.com/logo.jpg" alt="Logo"></a> | <a href="https://www.somesite.com"><img src="https://www.example.com/logo.jpg" alt="Logo"></a> |
DNS ๊ตฌ์ฑ ํ์ธ
๊ฒฝ์ฐ์ ๋ฐ๋ผ ์ฌ์ฉ์ ์ง์ ๋๋ฉ์ธ์ DNS ๊ตฌ์ฑ์ผ๋ก ์ธํด HTTPS ์ธ์ฆ์๋ฅผ ์์ฑํ ์ ์๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค. ์ด๋ ์ถ๊ฐ DNS ๋ ์ฝ๋ ๋๋ GitHub Pages์ IP ์ฃผ์๋ฅผ ๊ฐ๋ฆฌํค์ง ์๋ ๋ ์ฝ๋๋ก ์ธํด ๋ฐ์ํ ์ ์์ต๋๋ค.
HTTPS ์ธ์ฆ์๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์์ฑ๋๋๋ก ํ๋ ค๋ฉด ๋ค์ ๊ตฌ์ฑ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ํธ์คํธ๊ฐ @
์ธ A
, AAAA
, ALIAS
, ANAME
๋ ์ฝ๋๊ฐ ์ถ๊ฐ๋ก ์๊ฑฐ๋, www
ํ์ ๋๋ฉ์ธ ๋๋ GitHub Pages์ ํจ๊ป ์ฌ์ฉํ๋ ค๋ ๊ธฐํ ์ฌ์ฉ์ ์ง์ ํ์ ๋๋ฉ์ธ์ ๊ฐ๋ฆฌํค๋ CNAME
๋ ์ฝ๋๊ฐ ์ถ๊ฐ๋ก ์์ผ๋ฉด HTTPS ์ธ์ฆ์๊ฐ ์์ฑ๋์ง ์์ ์ ์์ต๋๋ค.
์๋๋ฆฌ์ค | DNS ๋ ์ฝ๋ ์ข ๋ฅ | DNS ๋ ์ฝ๋ ์ด๋ฆ | DNS ๋ ์ฝ๋ ๊ฐ |
---|---|---|---|
Apex ๋๋ฉ์ธ ( example.com ) | A | @ | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
Apex ๋๋ฉ์ธ ( example.com ) | AAAA | @ | 2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153 |
Apex ๋๋ฉ์ธ ( example.com ) | ALIAS ๋๋ ANAME | @ | USERNAME.github.io ๋๋ORGANIZATION.github.io |
ํ์ ๋๋ฉ์ธ ( www.example.com ,blog.example.com ) | CNAME | SUBDOMAIN.example.com. | USERNAME.github.io ๋๋ORGANIZATION.github.io |