fix(deploy): prevent mini-user H5 blank page under /user basename
CI / verify (pull_request) Has been cancelled

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-15 18:57:33 +08:00
parent e7d39f7390
commit 7062aeb8f8
5 changed files with 29 additions and 1 deletions
+7
View File
@@ -0,0 +1,7 @@
{
"cleanUrls": false,
"trailingSlash": false,
"rewrites": [
{ "source": "**", "destination": "/index.html" }
]
}
+3 -1
View File
@@ -16,10 +16,12 @@ module.exports = {
},
{
// C 端改为 mini-user H5 产物(端口仍 8091,进程名保持兼容旧脚本)
// cleanUrls:false 见 apps/mini-user/serve.json(发版时复制到 dist/
// 否则 /pages/x/index 会被 301 成 /pages/xLocation 缺 /user 前缀 → Taro 白屏
name: 'dukang-h5-user',
cwd: `${APP_ROOT}/apps/mini-user`,
script: 'npx',
args: 'serve -s dist -l 8091',
args: 'serve dist -l 8091 -c serve.json',
interpreter: 'none',
instances: 1,
exec_mode: 'fork',
+7
View File
@@ -61,10 +61,17 @@ server {
return 302 /user/;
}
# Taro 路由页是 /pages/xxx/index;补全短路径,避免 UniversalRouter 404 白屏
location ~ ^/user/pages/([^/]+)/?$ {
return 302 /user/pages/$1/index$is_args$args;
}
location /user/ {
rewrite ^/user/(.*)$ /$1 break;
proxy_pass http://127.0.0.1:8091;
proxy_http_version 1.1;
# serve 若仍发出绝对 Location:/pages/...,补回 /user 前缀
proxy_redirect / /user/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+5
View File
@@ -36,10 +36,15 @@ server {
return 302 /user/;
}
location ~ ^/user/pages/([^/]+)/?$ {
return 302 /user/pages/$1/index$is_args$args;
}
location /user/ {
rewrite ^/user/(.*)$ /$1 break;
proxy_pass http://127.0.0.1:8091;
proxy_http_version 1.1;
proxy_redirect / /user/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+7
View File
@@ -81,8 +81,15 @@ if [[ "$SKIP_BUILD" == false ]]; then
--filter @dukang/h5-partner \
--filter @dukang/admin-web \
build
# serve 读取 dist/serve.json(相对静态根目录)
if [[ -f "$APP_ROOT/apps/mini-user/serve.json" ]]; then
cp -f "$APP_ROOT/apps/mini-user/serve.json" "$APP_ROOT/apps/mini-user/dist/serve.json"
fi
else
echo "==> 4. 跳过构建"
if [[ -f "$APP_ROOT/apps/mini-user/serve.json" && -d "$APP_ROOT/apps/mini-user/dist" ]]; then
cp -f "$APP_ROOT/apps/mini-user/serve.json" "$APP_ROOT/apps/mini-user/dist/serve.json"
fi
fi
echo "==> 5. 重启 PM2"