diff --git a/backend/.env b/backend/.env
index 1c6cf71..3938782 100644
--- a/backend/.env
+++ b/backend/.env
@@ -1,7 +1,7 @@
RUST_LOG=info,udmin=debug
APP_ENV=development
APP_HOST=0.0.0.0
-APP_PORT=8080
+APP_PORT=9898
DB_URL=mysql://root:123456@127.0.0.1:3306/udmin
JWT_SECRET=dev_secret_change_me
JWT_ISS=udmin
diff --git a/frontend/.env.development b/frontend/.env.development
new file mode 100644
index 0000000..0ff8de8
--- /dev/null
+++ b/frontend/.env.development
@@ -0,0 +1,14 @@
+# port 端口号
+VITE_PORT = 8888
+
+# 浏览器自动打开
+VITE_OPEN = true
+
+# 本地环境
+ENV = 'development'
+
+# ADMIN 服务地址(开发代理目标)
+VITE_ADMIN_PROXY_PATH = http://127.0.0.1:9898
+
+# API 基地址(留空则走相对 /api,经由开发代理转发)
+VITE_API_BASE =
\ No newline at end of file
diff --git a/frontend/.env.production b/frontend/.env.production
new file mode 100644
index 0000000..887fd95
--- /dev/null
+++ b/frontend/.env.production
@@ -0,0 +1,14 @@
+# port 端口号(生产构建无效,仅用于本地预览时生效)
+VITE_PORT = 8888
+
+# 浏览器自动打开(生产构建无效)
+VITE_OPEN = false
+
+# 生产环境
+ENV = 'production'
+
+# ADMIN 服务地址(生产一般同域反代,留空)
+VITE_ADMIN_PROXY_PATH =
+
+# API 基地址(推荐同域反代,留空则 axios 使用 /api;如需直连后端,填写例如 https://api.example.com)
+VITE_API_BASE =
\ No newline at end of file
diff --git a/frontend/.env.staging b/frontend/.env.staging
new file mode 100644
index 0000000..2386ea5
--- /dev/null
+++ b/frontend/.env.staging
@@ -0,0 +1,14 @@
+# port 端口号(staging 本地预览)
+VITE_PORT = 8888
+
+# 浏览器自动打开
+VITE_OPEN = true
+
+# 预发环境
+ENV = 'staging'
+
+# 预发 ADMIN 服务地址(仅本地预览代理使用)
+VITE_ADMIN_PROXY_PATH = http://127.0.0.1:9898
+
+# 预发 API 基地址(可填你的预发后端域名,例如 https://staging-api.example.com;若留空则使用 /api)
+VITE_API_BASE =
\ No newline at end of file
diff --git a/frontend/src/pages/Logs.tsx b/frontend/src/pages/Logs.tsx
index 59102b5..0f23068 100644
--- a/frontend/src/pages/Logs.tsx
+++ b/frontend/src/pages/Logs.tsx
@@ -117,7 +117,7 @@ export default function Logs() {