多項目部署在同一個GitHub Pages


由於GitHub 的約定,一個賬戶只能擁有一個GitHub Pages,那么,如果你有多個想部署的靜態網站(博客和文檔等),它們是互相隔離的,如何用同一個GitHub賬戶進行部署呢?

從之前如何搭建GitHub Pages的系列文章用GitHub Pages搭建博客(一),我們知道Jekyll或者Hexo實現的靜態網站的配置中,常常要指定一個當前網站的目錄。

如果我們的相關內容直接在當前項目的根目錄下,jekyll將從當前目錄進行加載,如果在某個子目錄下,在jekyll的配置文件中指定該目錄即可正確加載。

而如果我們需要部署一個博客+一個文檔(如docsify)在同一個GitHub Pages域名下時,我們可以將內容拆分為不同的子項目存儲。

訪問示例:

主域名 -> 博客項目

主域名/路徑 -> 文檔項目

比如,我創建了一個GitHub Pages項目(名稱dev2007.github.io),然后在配置中開啟了GitHub Pages,那么這個項目就是對應的主域名訪問,如下:

示例鏈接:https://dev2007.github.io/

如果想給主項目增加子目錄的訪問,則是項目中增加子目錄,然后在jekyll的配置文件中指定子目錄相關信息。

然后,我需要一個項目的專門文檔項目,使用相應的工具(如docsify)進行文檔編寫。我需要將它也部署到GitHub Pages中進行訪問,只需要直接在該項目的SettingsGitHub Pages標簽中,指定分支和目錄,開啟該項目的GitHub Pages。系統會自動按項目名稱分配域名子路徑。如下:

示例鏈接:https://dev2007.github.io/es-book/

通過以上方式,我們就將兩個項目部署到了同一個GitHub Pages中。如果進一步想使用子域名,在項目的Custom domain中進行配置即可。

2021-05-18 補充

關於多項目下,如何設置自定義域名。

由於github的所有項目只能有一個 github pages 域名(如我的項目:dev2007/dev2007.github.io,域名為https://dev2007.github.io),其他開啟 github pages 的項目都是這個域名的子目錄(如項目dev2007/imgs,域名為https://dev2007.github.io/imgs)。
而我想將他們分別配置為我的子域名:

項目 github域名 自定義域名
dev2007/dev2007.github.io https://dev2007.github.io https://blog.shiyueshuyi.xyz
dev2007/imgs https://dev2007.github.io/imgs https://images.shiyueshuyi.xyz

我們只需要在域名服務商的管理界面上,將子域名指向 github pages 域名。即配置CNAME:

blog -> CNAME -> dev2007.github.io
images -> CNAME -> dev2007.github.io

然后在 github 的相應項目的 Pages 配置添加相應的域名:
dev2007/dev2007.github.io -> 配置自定義域名 blog.shiyueshuyi.xyz
dev2007/imgs -> 配置自定義域名 imags.shiyueshuyi.xyz

稍等 DNS 生效后,就可以使用子域名訪問相應的 github pages主項目、子項目網站了。

歡迎關注我的博客:Awu's Blog | 阿嗚的邊城

歡迎關注我的公眾號:阿嗚的編程

這里沒有枯燥的技術分享,這里只有程序員的生活與浪漫,如“邊城”一般。


題圖來源 :unsplash


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM