hexo-next 網頁載入效能優化
本篇主要是解決Hexo-Next主題載入速度優化。
使用環境
NexT 8.15.1
有的時候會一直覺得自己的網站載入速度太慢,但由於安裝了hexo-optimize的第三方套件會導致跑版。後來找到用prefetch和網頁壓縮的方式進行優化。
使用Quicklink進行優化(prefetch)
- 透過npm安裝Quicklink
npm install quicklink
- 修改
_config.yml
或_config.next.yml
檔案的內容,能在該檔案裡面找到下列參數
請記得是修改而不是自己新增,如果找不到代表此方法不完全適用
1 | # Quicklink Support |
並將他們以上false的部分改成true
1 | # Quicklink Support |
- 啟用CDN(這裡一樣是修改
_config.yml
或_config.next.yml
)
請記得是修改而不是自己新增,如果找不到代表此方法不完全適用
找到以下敘述並修改
1 | vendors: |
方法一:cloudflare為例
1 | # The CDN provider of NexT internal scripts. |
方法二:jsdelivr為例(網路上使用的人較多)
1 | # The CDN provider of NexT internal scripts. |
CDN列表url查詢
- cloudflare https://cdnjs.com/libraries/hexo-theme-next/8.15.1
- jsdelivr https://www.jsdelivr.com/package/npm/quicklink/
頁面壓縮
透過npm安裝Hexo-neat
npm install hexo-neat --save
修改跟目錄底下的
_config.yml
檔案,並添加以下參數
1 | neat_enable: true |
圖片晚載入
適合用於網頁圖片較多的人。
1. 安裝npm install hexo-lazyload-image --save
2. 修改配置_config.yml
(如果有用NexT主題的請修改NexT主題的_config.yml
,而不是跟目錄的_config.yml
)
1 | lazyload: |
測試頁面
想測試優化的結果可以用以下網頁做測試。
Google PageSpeed Insights https://pagespeed.web.dev/
參考資料
- Hexo-NexT 加载性能优化
- GoogleChromeLabs/quicklink
- quicklink
- Hexo-neat
- Hexo 壓縮相關檔案
- hexo-lazyload-image
- hexo-lazyload-image
- https://theme-next.js.org/docs/advanced-settings/vendors