feat: 添加 Flutter Web 部署脚本

- 解决 WASM 加载问题
- 完整复制所有构建文件
- 检查关键文件和权限
This commit is contained in:
2026-03-25 09:32:06 +08:00
parent 8ce4648ab0
commit a54de87618

50
deploy_flutter_web.sh Executable file
View File

@@ -0,0 +1,50 @@
#!/bin/bash
# ============================================
# Flutter Web 部署脚本 - 解决 WASM 加载问题
# ============================================
set -e
PROJECT_DIR="/www/wwwroot/monisuo"
FLUTTER_WEB_DIR="/www/wwwroot/monisuo-h5"
echo "🚀 开始部署 Flutter Web..."
# 1. 进入项目目录
cd $PROJECT_DIR
# 2. 拉取最新代码
echo "📥 拉取最新代码..."
git fetch origin
git reset --hard origin/main
# 3. 清理旧文件
echo "🗑️ 清理旧文件..."
rm -rf $FLUTTER_WEB_DIR/*
# 4. 复制新构建文件
echo "📦 复制构建文件..."
cp -r $PROJECT_DIR/flutter_monisuo/build/web/* $FLUTTER_WEB_DIR/
# 5. 检查关键文件
echo "✅ 检查关键文件..."
ls -lh $FLUTTER_WEB_DIR/main.dart.js
ls -lh $FLUTTER_WEB_DIR/canvaskit/canvaskit.wasm
# 6. 设置权限
echo "🔐 设置权限..."
chown -R www:www $FLUTTER_WEB_DIR
chmod -R 755 $FLUTTER_WEB_DIR
# 7. 检查 Nginx 配置(如果需要)
echo "📋 检查 Nginx MIME 类型配置..."
NGINX_CONF="/www/server/nginx/conf/mime.types"
if grep -q "application/wasm" $NGINX_CONF; then
echo "✅ WASM MIME 类型已配置"
else
echo "⚠️ 需要添加 WASM MIME 类型到 Nginx 配置"
echo "请在 $NGINX_CONF 中添加:"
echo " application/wasm wasm;"
fi
echo "✅ Flutter Web 部署完成!"
echo "🌐 访问地址: http://8.155.172.147:8061"