Hexo 部落格搶救記
如果有看我的這一篇:第一篇描述自動發佈文章的人就會知道這個部落格發佈版本是用一支 JavaScript
程式拉部落格程式碼下來,並且使用 hexo generate
指令發布新的文章,然而在耍廢很久之後,我發現發佈文章竟然失效了!這篇文章就這次的 Trouble Shooting
過程紀錄一下,以防下次失效又要再來一次…
在我發現推送程式碼並沒有更新部落格後,第一步就是要去 GitLab
的 Webhook
戳戳看之前的 Webhook Server
,看有沒有反應
觀察後發現 response
是 200
,所以 Webhook Server
還沒掛掉,那就有可能是 Webhook
在處理 event
的過程出了問題,所以就這兩個步驟進行測試:
1 | # 拉最新文章 |
發現問題點,hexo
指令失效!
就算解除安裝並重新安裝最新版 hexo
也沒用,反而無法輸入產生文章的指令。
如何解決
搜尋 “hexo 命令沒有作用” 關鍵字後看到了這幾篇文章:
開始意識到可能是 Node 版本過低,於是查到了這篇文章: 在 2021 可以使用 ESModule 了嗎?,文章裡面指出 Node 10
於 2021 年 EOL(End-of-life)
了。
果然,查詢版本之後發現用了 Node 10,於是乎使用 nvm
這個好用的 Node 版本切換工具下載 Node 12,並切換到該版本。
(2022.3.13 更新)
如果是使用 nvm
作為 Node 版本管理工具的話,要在關閉 terminal 之前把 nvm 的預設值改成當下的版本,否則關閉 terminal 之後會回到舊的 Node 版本
1 | nvm alias default 12.22.5 |
然後 hexo 就又又又可以使用了,可喜可賀!
本次超簡短分享就到這,感謝收看。
♖ Reference
♞ Node版本管理之解決版本過高造成Hexo上傳報錯
♞ 快速切换Node版本之版本过高造成Hexo上传报错
♞ 在 2021 可以使用 ESModule 了嗎?