若是你只想搭建一個博客,那麼你極可能不須要一個服務器,並且會更容易些前端
若是你須要在我的服務器上部署,有可能會經歷如下步驟:vue
固然,若是你有一個完整的 kubernetes
環境,後期工做量相對就會簡單不少,你也須要node
這也是在 k8s 上部署先後端應用的通常流程react
相對而言使用一個靜態網站網站託管服務,複雜度與工做量就會少了不少,畢竟它部署時只須要維護若干靜態文件。也更適合剛接觸博客搭建或者沒有服務器的同窗webpack
動態博客應用狀態太重,複雜性太高,不便於部署與遷移。無狀態的靜態博客是一個不錯的選擇。nginx
若是你不想折騰數據庫,那你能夠選擇一個靜態網站生成器: 你只須要餵給它一大堆 markdown,它就會生成一些靜態文件。git
至於生成器,這是我曾經使用過的,感受都很不錯,你能夠任選一款,如何構建參考官方文檔。github
The world’s fastest framework for building websites.
,不過我自我感受它的主題樣式略少。若是你想定製,那你須要對 go
語言的 template
有些瞭解。vuepress
構建。能夠部署在 github pages
或者 netlify
web
推薦使用 netlify
,它能夠結合 github
作 CI/CD: 當你把代碼 push 到 github 的指定分支時,它就會在 netlify 自動部署,另外它也有緩存,重定向,Prerender等諸多配置docker
xxx.github.io
xxx.netlify.com
個人我的博客使用了 netlify
,關於構建的配置文件以下
[build]
base = ""
publish = ".vuepress/dist"
command = "npm run build"
[[headers]]
for = "/assets/*"
[headers.values]
cache-control = "max-age=31536000"
複製代碼
你能夠在域名提供商 godaddy 或者阿里雲 直接註冊一個。
而且在域名提供商處配置 CNAME: yourdomain.com
-> xxx.netlify.com
當使用了本身的域名後,你須要去 netlify
爲你的域名配置 https
因爲網站託管服務的服務器大都在國外,網絡速度上可能慘不忍睹,配置CDN就能派上用場了。
若是域名沒有備案,建議使用 cloudflare 的CDN服務,徹底免費
若是域名已經備案,建議使用阿里雲的CDN服務,按量收費。
固然這時候 https
須要從新配置 (阿里雲的 https 流量也會收費)
Note: 使用 CDN 時要配置好正確的 nameserver
對於 vue/react 此類現代前端技術而言,結合 webpack 工程化愈來愈出色。如 vuepress
中 SPA
與 SEO
的結合, 但最重要的是生成帶有 hash 的靜態資源文件
爲帶有 hash 的靜態資源文件在源站(即netlify)配置永久緩存,也能在阿里雲上爲 CDN 與 https 省很多流量費
[[headers]]
for = "/assets/*"
[headers.values]
cache-control = "max-age=31536000"
複製代碼
如下是緩存在CDN命中的截圖
cache-control: ma-age=31536000
設置永久緩存via
經過的代理節點x-cache: HIT
在CDN上命中緩存