#!/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"