# URL Shooter 短網址系統 這是一個用 Node.js 寫的短網址系統。除了可以縮網址,還能看點擊統計、設通知,並保護你的轉址安全。 ## 準備工作 - Node.js (v14 以上) - SQLite (預設) 或 MySQL/MariaDB - npm 或 yarn ## 安裝步驟 1. 把專案載下來 2. 安裝必要的套件: ```bash npm install ``` 3. 設定環境變數: - 把 `.env.example` 複製一份改名成 `.env` - 把資料庫連線資訊跟管理員帳號填進去 ```bash ADMIN_USER=你的帳號 ADMIN_PASS=你的密碼 DB_TYPE=sqlite # 或是 mysql ``` 4. 初始化資料庫(這步一定要做): ```bash npm run init ``` 這會幫你建立資料表、設好管理員帳號,並測試資料庫有沒有通。 5. 啟動系統: ```bash npm start ``` 6. 打開瀏覽器看看: - 前台:`http://localhost:4000` - 管理後台:`http://localhost:4000/admin.html` ## 常用的指令 - `npm run init` - 第一次用或想重置資料庫時跑這個 - `npm start` - 正常啟動伺服器 - `npm run dev` - 開發時用,改程式會自動重新啟動 ## 主要功能 - 智能短網址:可以隨機產生或自己設想要的短網址。 - 全方位安全檢查: - 整合 Google Safe Browsing 雲端掃描,幫你擋掉釣魚網站。 - 有 DNS 檢查,防止有人亂連到內部網路。 - 快取機制讓校驗速度變超快。 - 支援 Regex 黑名單,網域跟短碼都能過濾。 - QR Code:每個短網址都會自動生一個 QR Code。 - 通知系統: - 支援 Webhook(最多 5 組)跟 Email (SMTP)。 - 有超過 15 種事件會發通知,像是網址建立、過期或點擊量太高。 - 專業管理後台: - 數據面板看今天或本月的流量。 - 可以在轉址頁面放廣告 (HTML)。 - 內建一鍵備份跟還原工具。 - 開發者專用 API: - 有持久性 API Key,方便串接其他程式。 - 有頻率限制保護,不怕被人亂刷。 - 介面:用 Vue 3 跟 Bootstrap 5 做的森林綠主題。 ## 頁尾標示 頁尾會顯示 「© 2026 DA2 Studio」,點了會連到 `https://da2.35g.tw`。 ## 使用的技術 - 後端:Node.js, Express - 資料庫:SQLite (預設) / MySQL - 前端:Vue.js 3 - 樣式:Bootstrap 5 - QR Code:qrcode 函式庫 - 認證:JWT