用戶註冊後自動獲得專屬主頁,無需為每位用戶建立實體檔案。透過 URL Rewrite / Server-side Routing 將動態路徑映射到同一個處理邏輯。
user_id(自增長、UUID 或雪花算法)。https://domain.com/u/10000 或 https://domain.com/10000https://10000.domain.com(需泛域名解析)rewrite ^/u/(\d+)$ /profile.jsp?uid=$1 last;@GetMapping("/u/{uid}")app.get('/u/:uid', handler)/u/* 解析 uid 轉發。uid 查詢資料庫,渲染同一個模板頁面(JSP/Thymeleaf/React 等)。@GetMapping("/u/{uid}")
public String userProfile(@PathVariable Long uid, Model model) {
User user = userService.findById(uid);
if (user == null) return "error/404";
model.addAttribute("user", user);
return "profile"; // profile.html
}
location /u/ {
rewrite ^/u/(\w+)$ /index.html?uid=$1 last;
}
# 前端 JS 讀取 URL 參數 uid,呼叫 API 獲取用戶資料渲染
/u/john_doe 需唯一性驗證、保留字過濾、修改時舊連結 301 導向。Cache-Control: private, max-age=60。