19 1/21/19 업데이트 :
내 마지막 대답 이후 상황이 약간 바뀌 었습니다. 이 업데이트 된 답변은 구성 방법을 보여줍니다.
- 루트 에이펙스 (example.com)
- 하위 도메인 (www.example.com)
- HTTPS (선택적이지만 강력하게 권장 됨)
결국 모든 요청 example.com
은 https://www.example.com (또는 HTTPS를 사용하지 않도록 선택한 경우 http : //) 으로 리디렉션됩니다 . 나는 항상 www
내 최종 착륙으로 사용합니다. 왜 ( 1 , 2 )는 또 다른 토론을위한 것입니다.
이 답변은 길지만 복잡 하지 않습니다 . 이 주제에 대한 GitHub 문서가 명확하지 않거나 선형 적이 지 않기 때문에 명확하게 설명했습니다.
1 단계 : GitHub 설정에서 GitHub 페이지 활성화
- 리포지토리에서 탭을 클릭 하십시오
GitHub Pages
섹션으로 스크롤 하십시오. 두 가지 옵션이 있습니다.
- 선택
master branch
하면 /README.md
웹으로 취급 됩니다 index.html
. 선택 master branch /docs folder
하면 /docs/README.md
웹으로 취급 됩니다 index.html
.
- 테마를 선택하십시오.
- GitHub가 사이트를 게시하는 동안 잠시 기다려주십시오. 옆의 링크를 클릭하여 작동하는지 확인하십시오
Your site is ready to be published at
2 단계 : GitHub 설정에서 사용자 정의 도메인 지정
여기에 사용자 정의 도메인 이름을 입력하고 다음을 누르십시오 save
.
이것은 미묘하지만 중요한 단계입니다.
- GitHub 페이지 사이트에 추가 한 맞춤 도메인이
example.com
로 설정 www.example.com
되면example.com
- GitHub 페이지 사이트에 추가 한 사용자 지정 도메인이
www.example.com
인 경우 (으) example.com
로 리디렉션됩니다 www.example.com
.
앞서 언급 한 바와 같이, 나는에 착륙 항상 추천 www
내가 입력 한 있도록 www.example.com
로 위의 사진.
3 단계 : DNS 항목 만들기
DNS 제공 업체의 웹 콘솔에서 4 개의 A
레코드와 1 개의 레코드를 만듭니다 CNAME
.
A
@
(일명 루트 정점)에 대한 기록 :
일부 DNS 공급자는을 지정 @
하고 다른 DNS 공급자는 (예 : AWS Route 53) 하위 도메인을 비워두고을 나타냅니다 @
. 두 경우 모두 다음 과 같은 A
레코드를 작성합니다.
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
CNAME
www.example.com을 가리 키 도록 레코드를 작성하십시오 YOUR-GITHUB-USERNAME.github.io
.
가장 혼란스러운 부분입니다.
GitHub 리포지토리 이름 이 YOUR-GITHUB-USERNAME
아닙니다 ! 의 값은 이 차트에YOUR-GITHUB-USERNAME
의해 결정됩니다 .
A의 사용자 페이지 (가장 가능성이 당신이 무엇을) 사이트 CNAME
항목이 될 것입니다 username.github.io
, 예 :
A의 조직 페이지 사이트 CNAME
항목이 될 것입니다 orgname.github.io
, 예 :
5 단계 : DNS 항목 확인
A
를 실행 하여 레코드를 확인하십시오 dig +noall +answer example.com
. 185.x.x.x
입력 한 4 개의 IP 주소를 반환해야합니다 .
CNAME
를 실행 하여 레코드를 확인합니다 dig www.example.com +nostats +nocomments +nocmd
. 반환해야합니다CNAME YOUR-GITHUB-USERNAME.github.io
이러한 DNS 항목이 해결 / 전파되는 데 1 시간 정도 걸릴 수 있습니다. 일단 그렇게되면 브라우저를 열고 http://example.com
다시 리디렉션해야합니다.http://www.example.com
6 단계 : SSL (HTTPS) 구성 선택적이지만 적극 권장
사용자 정의 도메인이 작동되면 리포지토리 설정으로 돌아갑니다. 설정 페이지가 이미 열려 있으면 페이지를 강제로 새로 고침하십시오.
Enforce HTTPS
확인란 아래에 아직 처리 중임을 알리는 메시지 가 있으면 기다려야합니다. 처리 를 시작하기 save
위해 Custom domain
섹션 의 버튼을 눌러야 할 수도 있습니다 Enforce HTTPS
.
처리가 완료되면 다음과 같아야합니다.
Enforce HTTPS
확인란을 클릭하고 브라우저를 가리 킵니다 https://example.com
. 리디렉션하고 열어야합니다.https://www.example.com
그게 다야!
GitHub는 자동으로 HTTPS 인증서를 최신 상태로 유지하며 에이펙스를 처리하여 www
HTTPS를 통해 리디렉션합니다.
도움이 되었기를 바랍니다!!
...
이전 (19/2 월 3 일 이전) 답변
그래서 알아 냈습니다. James McLaughlin 이 내게 필요한 넛 지를 주었습니다.
www.yourdomain.com 및 yourdomain.com을 처리하는 gh-pages 프로젝트 페이지 저장소에 대한 사용자 정의 도메인을 설정하려면 (이미 저장소에 gh-pages 분기가 있다고 가정) :
- 프로젝트 저장소에서 gh-pages branch. 내용으로 CNAME 파일을 만듭니다
yourdomain.com
. 그런 다음 커밋하십시오.
- DNS 관리자에서 두 개의
cname
레코드를 설정하십시오 . 하나는 루트 정점 (@)과 다른 하나는 www입니다. 둘 다 가리 킵니다 YOURusername.github.io
. DNS 공급자가 지원하지 않는 경우 ALIAS
루트 정점에 기록 (@), 간단하게 만들 수 A
기록을 포인트로 그 192.30.252.153
와192.30.252.154
네임 서버가 업데이트 될 때까지 기다리십시오 :
dig yourdomain.com +nostats +nocomments +nocmd