郭安安的筆記碎片

因為是碎片所以看不懂很正常

本站 Hexo 使用 NexT 主題,須注意 Github Repo 有新舊版之分,舊版已不再維護,為避免混亂以下僅提供新版連結

https://github.com/next-theme/hexo-theme-next

安裝

官方提供兩種安裝方式:

  1. npm 下載 (建議)

    npm install hexo-theme-next
  2. Git Clone

    git clone https://github.com/next-theme/hexo-theme-next themes/next

Hexo 的 _config.yml 須將 theme 切換至 next

theme: next

NexT 設定

詳細設定內容網路上滿多,以下僅提供需特別注意的部分

  • 若是用 git clone 的方式安裝,請盡量避免直接修改 themes 下的 _config.yml
  • Hexo 本身有提供覆寫方法,可於根目錄下建立 _config.next.yml,並將相關設定無腦複製進來再做修改。
閱讀全文 »

專案在編譯支援多語系的程式庫時,可能會產生一堆用不到的語系資源 (衛星組件 (Satellite Assembly))。若僅會用到部分語系時,可於專案檔 (*.csproj) 內加入 <SatelliteResourceLanguages>

<PropertyGroup>
<SatelliteResourceLanguages>en;zh-TW</SatelliteResourceLanguages>
</PropertyGroup>
閱讀全文 »

自架的對外伺服器常被陌生 IP try 帳密,導致事件檢視器常常卡一堆登入失敗的紀錄而影響判讀,於是決定寫隻簡單的程式來監聽 Event Log 並即時將登入失敗的 IP 加到封鎖清單中。原本以為網路上查查資料,複製貼上改一下應該一小時左右就能搞定,結果各種撞牆卡了我一整天才完成,特此紀錄一下相關注意事項!

Event Log
Attack Bar Chart

閱讀全文 »

以下是 C# 專案建置時自動更新版本號的設定範例

  • 利用專案檔的 <VersionSuffix> 指定時間格式
  • Ex. 建置時間:2022/10/16 15:07 -> 版號:1.22.1016.1507
  • 可使用 Condition 屬性增加其他判斷
閱讀全文 »

某次接到的需求需實現以下功能,特此紀錄一下

  1. 透過網頁傳入 html 字串並下載成 PDF 檔
  2. 資料不落地,全程用 Stream 處理
    • 因具多台 AP Server,若產生實體檔案會需要多生一台代理伺服器
  3. Header 動態浮水印,需加入圖片及建立日期
  4. 密碼保護

原本預計採用常見的 iTextSharp 處理,但後來發現有中文亂碼的問題且轉換的相容性不太好,故決定改用 wkhtmltopdf.netcore,結果又發現該套件 (此時是 v5.0.2 Preview 版) 不支援加密功能,最終決定兩者混用

閱讀全文 »

推薦外掛

  1. hexo-abbrlink: 產生永久連結 for SEO,建立文章時會產生隨機編號的 url,以避免更換文章結構 (/2022/10/5/xxx) 時連結失效,同時也能避開中文的 urlencoding 讓連結更簡短些
  2. hexo-filter-nofollow: 避免爬蟲爬到外部連結會回不來 for SEO
  3. hexo-generator-sitemap: 產生 sitemap.xml for SEO
  4. hexo-generator-searchdb: 搜尋功能
  5. hexo-generator-feed: 產生 RSS

相關設定可參考最下方的 外掛設定

Plugins

Hexo 設定

直接參考以下設定檔 _config.yml 註解

Hexo version: 6.3.0
官方設定說明

閱讀全文 »

最近決定養成寫 Blog 的習慣,以隨手筆記技術文章,基於以下理由決定選用 Github Page + Hexo + NexT

  1. 快速寫作 -> Markdown
  2. 自主管理相關資源 -> Git
  3. 免費 -> Github Page
  4. 具搜尋功能,方便查找筆記 -> Hexo
  5. 畫面簡單易讀 -> Hexo + NexT (Theme)
閱讀全文 »
0%