如何使用 Hugo 和 Azure 搭建高效能且低成本的網站?

更新 發佈閱讀 7 分鐘
raw-image

你想要搭建一個既經濟實惠、高性能、可擴展且安全的網站,而又無需管理繁瑣後台的工作和懂編碼技術嗎?

今天,我將分享一個高性價比的解決方案,幫助你在微軟 Azure Static App靜態應用的服務上,使用 Hugo 構建一個高性能且安全的網站。

最棒的是什麼?

你甚至不需要了解任何編程知識,只需懂得如何使用 Markdown 在編輯器中創建頁面。

之前,我在 AWS 的 Lightsail 上創建了一個高可用性的 WordPress 網站。

然而,我發現要維持 WordPress 的高安全性需要持續的關注和額外的後台工作。

特別是,WordPress 的漏洞插件通常成為駭客入侵您網站的後門。

後來,我發現了 Hugo,可以用來構建靜態網站,甚至可以在幾分鐘內輕鬆地托管靜態網站在 Azure Static App靜態應用上,且不需要再擔心網站安全和效能的問題。

當然,您可以使用任何框架,如 Gatsby、Ghost、Hugo、Jekyll 來產生和部署靜態網頁到 Azure Static App靜態應用。

現在,你甚至可以利用 200 美元的免費信用額度,架設免費的網站。

讓我們開始吧。


內容大綱

  • 介紹 Hugo 和 Azure 靜態網頁應用
  • 需要的設定條件
  • 使用 Hugo 創建靜態網站
  • 設置 Azure 靜態網頁應用
  • 使用 GitHub Action的 CI/CD 進行測試和部署
  • 小秘訣
  • 總結


1.介紹 Hugo 和 Azure 靜態網頁應用

Hugo:一個快速且現代的靜態網站生成器,用 Go 語言編寫,以其建立靜態網站的速度和效率著稱。

你只需了解 Markdown 格式,就能在不需任何 HTML、JavaScript 或 CSS 網頁編程語言知識的情況下創建體面的網頁。

Azure 靜態網頁應用:由 Microsoft Azure 提供的一項服務,用於托管靜態內容,如 HTML、CSS、JavaScript 和圖片。它與 GitHub 和 Azure DevOps 整合,用於 CI/CD 管道。

不要害怕靜態內容。 你需要做的是在 Hugo 中運行單一命令行以構建靜態頁面,並將它們上傳到 Azure 靜態應用。

當然,這個過程可以自動啟動且整合 於CI/CD 管道自動化,當你的Github Repo(代碼

)有任何推送事件時,會自動部署。


2.需要的設定條件

你要有

  • 了解Markdown 和 Github 的基本知識。
  • 一個 GitHub 和 Azure 開發者帳號。


3. 使用 Hugo 創建靜態網站

安裝 Hugo

如果你使用 macOS 並且使用 Homebrew,你可以通過以下方式安裝 Hugo

brew install hugo


首先,創建你的新 Hugo 網站。

//創建 Hugo 示例網站

hugo new site demo-website// Goto hugo example site

cd demo-website


設置主題

git init

git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/anankeecho theme = \"ananke\" >> config.toml


新增頁面

hugo new posts/my-first-post.md


啟動 Hugo 服務器

你可以在以下位置測試並查看你的頁面

hugo server -D// Open your page

http://localhost:1313/4. Customizing Your Site


Tips:

  • hugo server 是一個用於建立網站和生成靜態內容的命令,方便你本地測試。
  • 如果你想在本地測試聯盟連結或廣告,你可以執行。
// This command can simulate the production usage

hugo serve -e production


4. 設置 Azure 靜態網頁應用

  • 一旦你的 Hugo 網站準備好了,你需要將你的網站上傳到 Github。
  • 然後登錄到 Azure → 創建一個新的靜態網頁應用 → 連接你的 GitHub 庫和分支。 然後點擊審查 + 創建
raw-image


5. 使用 GitHub Action的 CI/CD 進行測試和部署

你可以編輯一個頁面並將這個更改推送到 Github。

然後 Github → 在Action 標籤下,你可以檢查是否完成了構建和部署工作。

如果它顯示一個綠色圖標,這意味著部署工作成功。

raw-image

然後你可以前往 Azure 靜態應用 → 點選Visit your site

raw-image

6.小秘訣

Azure Static App靜態應提供許多功能,幫助您節省時間。

  • 自定義域名:您可以在 Azure 靜態網頁應用設置中輕鬆添加自定義域名。
  • SSL 證書:Azure 為自定義域名提供免費的 SSL 證書。
  • 成本管理:在 Azure 門戶中監控您的使用情況,確保您保持在預算範圍內。
  • 與 AWS Amplify 相比,Azure Static App靜態應用比 AWS Amplify 更為簡單,因為在設置網站時不會遇到奇怪的問題而卡住您。


Hugo

  • 您可以輕鬆找到或購買合適的模板來構建您的遊戲促銷或個人網站。
  • 要設置其他常見功能,如 Google Analytics 和評論(https://disqus.com)
  • 您可以編輯 ./<您的 Hugo 代碼>/config/_default/params.toml 以啟用它們。
vim ./<Your Hugo Code>/config/_default/params.toml

# google analytics

googleAnalytics = "<Replace Google Analytics ID>" # example: UA-123-45, for more info, read the article https://support.google.com/analytics/answer/1008080?hl=en

# disqus short name

disqusShortname = "<Replace disqus ID>" # get your shortname form here : https://disqus.com

# Create Robots.txt for SEO

enableRobotsTXT = false


7. 總結

恭喜!

raw-image

在這篇文章中,你已經學會了如何在 Azure Static App靜態應用上使用 Hugo 構建一個高性能且安全的網站,而且甚至不需要進行管理工作。 此外,你還了解到如何輕鬆地與 CI/CD 整合,以提升你的生產力。

如果你想快速構建一個網站,這篇文章將是一個很好的參考和開始。

如果你認為這篇文章有益,請通過👏這篇文章或追蹤我們來表達您的支持,以便在未來獲得最新的教程。

感謝您的閱讀!


原文發佈於 Game Tech Tutorial


留言
avatar-img
留言分享你的想法!
avatar-img
遊戲技術部落格與生活筆記
3會員
6內容數
分享技術文章解決問題及生活點滴。技術包括雲端技術(AWS, GCP, Azure)的實戰經驗、雲端證照考試指南、Unity遊戲開發、DevOps、SDK,手機遊戲和應用程式及網站開發。
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
這篇涵蓋了 Notion 建立網站的基礎,還有免費的教學資源,讓你不用寫程式,就能用 Notion 快速建立個人網站! Notion 簡易入口網站適合學生、求職、接案、小店家使用,能快速產出一個網站,節省成本又快速方便。
Thumbnail
這篇涵蓋了 Notion 建立網站的基礎,還有免費的教學資源,讓你不用寫程式,就能用 Notion 快速建立個人網站! Notion 簡易入口網站適合學生、求職、接案、小店家使用,能快速產出一個網站,節省成本又快速方便。
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
前面已經安裝好IIS後,並且也新建站台了,那麼接下來這篇就會分享如何使用它
Thumbnail
樣板模式的定義極為簡單,卻是大型系統程式、WEB/APP應用框架的設計核心,完美展現設計模式的價值: 簡單、高效、強大。
Thumbnail
樣板模式的定義極為簡單,卻是大型系統程式、WEB/APP應用框架的設計核心,完美展現設計模式的價值: 簡單、高效、強大。
Thumbnail
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
Thumbnail
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
Thumbnail
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
Thumbnail
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
Thumbnail
你想要搭建一個既經濟實惠、高性能、可擴展且安全的網站,而又無需管理繁瑣後台的工作和懂編碼技術嗎? 今天,我將分享一個高性價比的解決方案,幫助你在微軟 Azure Static App靜態應用的服務上,使用 Hugo 構建一個高性能且安全的網站。 最棒的是什麼? 你甚至不需要了解任何編程知識
Thumbnail
你想要搭建一個既經濟實惠、高性能、可擴展且安全的網站,而又無需管理繁瑣後台的工作和懂編碼技術嗎? 今天,我將分享一個高性價比的解決方案,幫助你在微軟 Azure Static App靜態應用的服務上,使用 Hugo 構建一個高性能且安全的網站。 最棒的是什麼? 你甚至不需要了解任何編程知識
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News