fix(deploy): staging C端 H5 根路径部署,去掉 /user 前缀
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -105,8 +105,7 @@ export default defineConfig(async () => ({
|
||||
},
|
||||
},
|
||||
h5: {
|
||||
// 生产发版由 remote-release 注入 TARO_H5_PUBLIC_PATH=/user/、TARO_H5_ROUTER_BASENAME=/user
|
||||
// 本地预览勿强制 basename,否则静态托管下易白屏
|
||||
// staging:user-test.dukanghaoke.com 根路径;生产:remote-release 注入 /user/
|
||||
publicPath: process.env.TARO_H5_PUBLIC_PATH || '/',
|
||||
...(process.env.TARO_H5_ROUTER_BASENAME
|
||||
? {
|
||||
|
||||
@@ -69,6 +69,14 @@ server {
|
||||
proxy_set_header Connection "";
|
||||
}
|
||||
|
||||
# 旧 /user 前缀书签 → 根路径(staging 独立域名,无 /user 子路径)
|
||||
location = /user {
|
||||
return 301 /;
|
||||
}
|
||||
location ^~ /user/ {
|
||||
rewrite ^/user/(.*)$ /$1 permanent;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:8191;
|
||||
proxy_http_version 1.1;
|
||||
|
||||
@@ -88,9 +88,14 @@ corepack prepare pnpm@11.2.2 --activate 2>/dev/null || true
|
||||
echo "==> 2. 安装依赖"
|
||||
# mini-user H5(Taro)构建峰值内存较高
|
||||
export NODE_OPTIONS="${NODE_OPTIONS:---max-old-space-size=8192}"
|
||||
# 生产部署 path:nginx 入口为 /user/
|
||||
export TARO_H5_PUBLIC_PATH="${TARO_H5_PUBLIC_PATH:-/user/}"
|
||||
export TARO_H5_ROUTER_BASENAME="${TARO_H5_ROUTER_BASENAME:-/user}"
|
||||
# C 端 H5 静态资源路径:staging 独立域名根路径;生产 nginx 入口为 /user/
|
||||
if [[ "$DUKANG_DEPLOY_ENV" == "staging" ]]; then
|
||||
export TARO_H5_PUBLIC_PATH="${TARO_H5_PUBLIC_PATH:-/}"
|
||||
unset TARO_H5_ROUTER_BASENAME
|
||||
else
|
||||
export TARO_H5_PUBLIC_PATH="${TARO_H5_PUBLIC_PATH:-/user/}"
|
||||
export TARO_H5_ROUTER_BASENAME="${TARO_H5_ROUTER_BASENAME:-/user}"
|
||||
fi
|
||||
# C 端 H5 编译期注入的 API origin(勿落到 localhost)
|
||||
export VITE_API_TARGET="${VITE_API_TARGET:-$VITE_API_DEFAULT}"
|
||||
export VITE_APP_ENV="$DUKANG_DEPLOY_ENV"
|
||||
@@ -167,3 +172,12 @@ APP_ROOT="$APP_ROOT" DEPLOY_TRIGGER="${DEPLOY_TRIGGER:-manual}" DUKANG_ENV_FILE=
|
||||
|| echo "WARN: system_version 写入失败"
|
||||
|
||||
echo "==> 发版完成 ($DUKANG_DEPLOY_ENV)"
|
||||
|
||||
if [[ "$DUKANG_DEPLOY_ENV" == "staging" ]]; then
|
||||
echo "==> 8. 重载 nginx(staging)"
|
||||
if command -v nginx >/dev/null 2>&1 && nginx -t 2>/dev/null; then
|
||||
systemctl reload nginx || echo "WARN: nginx reload failed"
|
||||
else
|
||||
echo "WARN: nginx 未安装或配置校验失败,跳过重载"
|
||||
fi
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user