feat: 添加 Flutter Web 部署脚本
- 解决 WASM 加载问题 - 完整复制所有构建文件 - 检查关键文件和权限
This commit is contained in:
50
deploy_flutter_web.sh
Executable file
50
deploy_flutter_web.sh
Executable 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"
|
||||||
Reference in New Issue
Block a user