1/23/19 CẬP NHẬT:
Mọi thứ đã thay đổi khá nhiều (cho tốt hơn) kể từ câu trả lời cuối cùng của tôi. Câu trả lời cập nhật này sẽ chỉ cho bạn cách định cấu hình:
- Root gốc (example.com)
- Tên miền phụ (www.example.com)
- HTTPS (tùy chọn nhưng được khuyến khích mạnh mẽ)
Cuối cùng, tất cả các yêu cầu example.com
sẽ được chuyển hướng đến https://www.example.com (hoặc http: // nếu bạn chọn KHÔNG sử dụng HTTPS). Tôi luôn luôn sử dụng www
như hạ cánh cuối cùng của tôi. Tại sao ( 1 , 2 ), là cho một cuộc thảo luận khác.
Câu trả lời này dài nhưng không phức tạp. Tôi đã tiết lộ cho sự rõ ràng vì các tài liệu GitHub về chủ đề này không rõ ràng hoặc tuyến tính.
Bước 1: Kích hoạt trang GitHub trong cài đặt GitHub
- Từ repo của bạn, nhấp vào tab
- Cuộn xuống
GitHub Pages
phần. Bạn có hai lựa chọn:
- Lựa chọn
master branch
sẽ coi /README.md
như web của bạn index.html
. Lựa chọn master branch /docs folder
sẽ coi /docs/README.md
như web của bạn index.html
.
- Chọn một chủ đề.
- Đợi một chút trong khi GitHub xuất bản trang web của bạn. Xác minh nó hoạt động bằng cách nhấp vào liên kết bên cạnh
Your site is ready to be published at
Bước 2: Chỉ định miền tùy chỉnh trong cài đặt GitHub
Nhập tên miền tùy chỉnh của bạn ở đây và nhấn save
:
Đây là một bước tinh tế, nhưng quan trọng.
- Nếu tên miền tùy chỉnh bạn đã thêm vào trang GitHub Pages của mình
example.com
thì www.example.com
sẽ chuyển hướng đếnexample.com
- Nếu tên miền tùy chỉnh bạn đã thêm vào trang GitHub Pages của mình
www.example.com
thì example.com
sẽ chuyển hướng đến www.example.com
.
Như đã đề cập trước đó, tôi khuyên bạn nên luôn hạ cánh www
để tôi nhập www.example.com
như hình trên.
Bước 3: Tạo các mục DNS
Trong bảng điều khiển web của nhà cung cấp DNS của bạn, tạo bốn A
bản ghi và một bản ghi CNAME
.
A
Bản ghi cho @
(còn gọi là root apex):
Một số nhà cung cấp DNS sẽ yêu cầu bạn chỉ định @
, những người khác (như AWS Route 53) bạn sẽ để trống tên miền phụ để chỉ ra @
. Trong cả hai trường hợp, đây là những A
bản ghi để tạo:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
- Tạo một
CNAME
bản ghi để trỏ www.example.com tới YOUR-GITHUB-USERNAME.github.io
.
Đây là phần khó hiểu nhất.
Lưu ý YOUR-GITHUB-USERNAME
KHÔNG phải tên repo GitHub! Giá trị của YOUR-GITHUB-USERNAME
được xác định bởi biểu đồ này .
Đối với trang của trang Người dùng (rất có thể là bạn), CNAME
mục nhập sẽ là username.github.io
, ví dụ:
Đối với trang web của Tổ chức , CNAME
mục nhập sẽ là orgname.github.io
, ví dụ:
Bước 5: Xác nhận các mục DNS
Xác nhận A
hồ sơ của bạn bằng cách chạy dig +noall +answer example.com
. Nó sẽ trả về bốn 185.x.x.x
địa chỉ IP bạn đã nhập.
Xác nhận CNAME
hồ sơ của bạn bằng cách chạy dig www.example.com +nostats +nocomments +nocmd
. Nó sẽ trả lại mộtCNAME YOUR-GITHUB-USERNAME.github.io
Có thể mất một giờ hoặc lâu hơn để các mục DNS này giải quyết / tuyên truyền. Khi họ thực hiện, hãy mở trình duyệt của bạn lên http://example.com
và nó sẽ chuyển hướng đếnhttp://www.example.com
Bước 6: Cấu hình SSL (HTTPS). Tùy chọn, nhưng rất khuyến khích
Sau khi bạn có miền tùy chỉnh hoạt động, quay lại cài đặt repo. Nếu bạn đã mở trang cài đặt, hãy làm mới trang.
Nếu có một thông báo dưới Enforce HTTPS
hộp kiểm, nói rằng nó vẫn đang xử lý, bạn sẽ cần chờ. Bạn cũng có thể cần nhấn save
nút trong Custom domain
phần để bắt đầu Enforce HTTPS
xử lý.
Sau khi xử lý hoàn tất, nó sẽ trông như thế này:
Chỉ cần nhấp vào Enforce HTTPS
hộp kiểm và trỏ trình duyệt của bạn đến https://example.com
. Nó sẽ trực tiếp và mởhttps://www.example.com
ĐÓ LÀ NÓ!
GitHub sẽ tự động cập nhật chứng chỉ HTTPS của bạn VÀ nên xử lý đỉnh để www
chuyển hướng qua HTTPS.
Hi vọng điêu nay co ich!!
...
Câu trả lời cũ (trước ngày 1/2/19)
Vì vậy, tôi đã tìm ra nó. James McLaughlin đã cho tôi tiếng nũng nịu tôi cần.
Để thiết lập tên miền tùy chỉnh cho repo Trang dự án gh-xử lý www.yourdomain.com và yourdomain.com (giả sử bạn đã có chi nhánh gh-page trên repo của mình):
- Từ repo dự án của bạn, chi nhánh gh-page. Tạo một tệp CNAME với nội dung
yourdomain.com
. Cam kết rồi đẩy.
- Trong trình quản lý DNS của bạn, hãy thiết lập hai
cname
bản ghi. Một cho apex gốc (@) và một cho www. Cả hai chỉ vào YOURusername.github.io
. Nếu nhà cung cấp DNS của bạn KHÔNG hỗ trợ ALIAS
các bản ghi trên apex gốc (@), chỉ cần tạo A
các bản ghi trỏ đến 192.30.252.153
và192.30.252.154
Đợi đến khi cập nhật máy chủ tên của bạn:
dig yourdomain.com +nostats +nocomments +nocmd