timmy / 自動合併 SSL 憑證鏈檔案 (server, intermediate, root)
0 likes
0 forks
1 files
Last active 7 months ago
將 server、中間、根憑證合併成完整憑證鏈,輸出固定檔名或自動加日期的檔案,方便伺服器直接使用。
| 1 | # 將伺服器證書、中間證書和根證書合併成一個完整的證書鏈文件 |
| 2 | # server-cert.pem: 伺服器證書,通常由憑證頒發機構 (CA) 簽發,包含伺服器的公鑰和身份資訊 |
| 3 | # intermediate-ca.pem: 中間證書,由中間 CA 簽發,用於建立伺服器證書與根證書之間的信任鏈 |
| 4 | # root-ca.pem: 根證書,由根 CA 簽發,是信任鏈的頂端(通常客戶端已預裝根證書,此處包含僅為完整性) |
| 5 | # fullchain.pem: 輸出文件,包含完整的證書鏈,從伺服器證書到根證書,供伺服器(如 Nginx 或 Apache)使用 |
| 6 | cat server-cert.pem intermediate-ca.pem root-ca.pem > fullchain.pem |
| 7 | |
| 8 | |
| 9 | |
| 10 | # 將伺服器證書、中間證書和根證書合併成一個完整的證書鏈文件,並以當前日期作為文件名的一部分 |
timmy / 簡單實作資料庫依賴注入
0 likes
0 forks
1 files
Last active 7 months ago
| 1 | from abc import ABC, abstractmethod |
| 2 | |
| 3 | # 定義一個資料庫介面,規定大家都要有 connect 方法 |
| 4 | class IDatabase(ABC): |
| 5 | @abstractmethod |
| 6 | def connect(self): |
| 7 | pass |
| 8 | |
| 9 | # 具體實作 MySQL 版資料庫 |
| 10 | class MySQLDatabase(IDatabase): |
timmy / Flask + Prometheus 快速監控
0 likes
0 forks
1 files
Last active 7 months ago
使用 Flask 和 Prometheus 客戶端,快速設置基本的應用監控,輕鬆追蹤請求數量和延遲。
| 1 | from flask import Flask, Response |
| 2 | from prometheus_client import Counter, Summary, generate_latest, CONTENT_TYPE_LATEST |
| 3 | import time |
| 4 | |
| 5 | app = Flask(__name__) |
| 6 | |
| 7 | # 自訂 metrics |
| 8 | REQUEST_COUNT = Counter('app_requests_total', 'Total number of requests') |
| 9 | REQUEST_LATENCY = Summary('app_request_latency_seconds', 'Request latency') |
timmy / 更改目錄權限與擁有者
0 likes
0 forks
1 files
Last active 7 months ago
使用 chown 和 chmod 將資料夾及其內容的擁有者設為 nobody,並設定適當的讀寫執行權限。
| 1 | # 將該資料夾及裡面的所有檔案/子目錄的 owner & group 改成 65534:65534 |
| 2 | # 65534 就是「nobody」的代號,用來指定權限最低的帳號,降低風險。 |
| 3 | sudo chown -R 65534:65534 /path/to/directory |
| 4 | |
| 5 | # 把該資料夾及其所有內容的權限設成 775 |
| 6 | # 表示 owner 與同群組成員可讀寫執行,其他人只能讀與執行 |
| 7 | sudo chmod -R 775 /path/to/directory |
timmy / Flask API 與農曆轉換工具
0 likes
0 forks
4 files
Last active 7 months ago
結合 Flask 建立 API 服務,提供西曆與農曆的互轉功能,並自動尋找可用端口啟動服務。
| 1 | #!/usr/bin/env python3 |
| 2 | # converter.py |
| 3 | # 用於西曆與農曆互轉,已封裝成類別 |
| 4 | |
| 5 | import os |
| 6 | import json |
| 7 | import argparse |
| 8 | from datetime import datetime |
| 9 | |
| 10 | class Converter: |