feat(ui): add favicon.ico route and link tag in base template

This commit is contained in:
2026-07-18 09:21:07 +08:00
parent b0e69fc123
commit e7396de1a4
4 changed files with 9 additions and 1 deletions
+8 -1
View File
@@ -1,6 +1,7 @@
from pathlib import Path
from fastapi import FastAPI
from fastapi.responses import FileResponse
from fastapi.staticfiles import StaticFiles
from app.config import UPLOAD_DIR
@@ -10,6 +11,7 @@ from app.routers import web, api
app = FastAPI(title="Mailova 星笺")
UPLOAD_DIR.mkdir(exist_ok=True)
STATIC_DIR = Path(__file__).resolve().parent / "static"
# Cache-Control for uploaded images (30 days, immutable — filenames contain UUID)
@@ -21,7 +23,12 @@ async def cache_control_middleware(request, call_next):
return response
app.mount("/static", StaticFiles(directory=str(Path(__file__).resolve().parent / "static")), name="static")
@app.get("/favicon.ico")
async def favicon():
return FileResponse(STATIC_DIR / "favicon.ico", media_type="image/x-icon")
app.mount("/static", StaticFiles(directory=str(STATIC_DIR)), name="static")
app.mount("/uploads", StaticFiles(directory=str(UPLOAD_DIR)), name="uploads")
app.include_router(web.router)
Binary file not shown.

After

Width:  |  Height:  |  Size: 135 B

+1
View File
@@ -2,6 +2,7 @@
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}星笺{% endblock %}</title>
<link rel="stylesheet" href="/static/style.css">
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB