Flutter Web部署到子路径的打包指令

打包指令:

复制代码
flutter build web --web-renderer canvaskit --base-href /dev110/ --no-tree-shake-icons --dart-define=ENV=prod

参数说明:

  • --web-renderer canvaskit: 使用 canvaskit 渲染模式,可以提高图形和动画的质量。
  • --base-href /dev110/: 设置应用程序的基础路径为 /dev110/,这适合部署在子路径的情况。确保服务器支持路径下的静态资源。
  • --no-tree-shake-icons: 禁用图标的 tree shaking,确保所有图标资源在打包时保留。
  • --dart-define=ENV=prod: 设置环境变量 ENVprod,可以在应用中通过 String.fromEnvironment('ENV') 访问。

部署时需要注意:

  1. Web服务器配置

    • 确保服务器支持二级路由和 base-href 设置,例如在 Nginx 中配置静态资源的根目录为 /dev110/
    • 配置路由重写规则,避免用户刷新页面时出现 404 错误。一般来说,应该重写所有路由请求到 index.html
  2. 访问基础路径

    • 在生产环境访问 https://your-domain.com/dev110/ 进行测试,确保所有资源加载正常。

这样就可以在指定路径上正常运行 Flutter Web 项目并且支持二级路由了。

相关推荐
tbit21 小时前
fluwx 拉起小程序WXLog:Error:fail to load Keychain status:-25300, keyData null:1
flutter·ios·微信小程序
QuantumLeap丶1 天前
《Flutter全栈开发实战指南:从零到高级》- 19 -手势识别
flutter·ios·前端框架
卢叁1 天前
Flutter之阿里云视频播放器支持 iOS模拟器解决方案
flutter
鹏多多1 天前
flutter睡眠与冥想数据可视化神器:sleep_stage_chart插件全解析
android·前端·flutter
Zender Han1 天前
Flutter 新版 Google Sign-In 插件完整解析(含示例讲解)
android·flutter·ios·web
weixin_411191842 天前
flutter中WebView的使用及JavaScript桥接的问题记录
javascript·flutter
QuantumLeap丶2 天前
《Flutter全栈开发实战指南:从零到高级》- 18 -自定义绘制与画布
android·flutter·ios
你听得到112 天前
Web前端们!我用三年亲身经历,说说从 uniapp 到 Flutter怎么转型的,这条路我爬过,坑我踩过
前端·flutter·uni-app
fouryears_234172 天前
Android 与 Flutter 通信最佳实践 - 以分享功能为例
android·flutter·客户端·dart
玲珑Felone2 天前
flutter 状态管理--InheritedWidget、Provider原理解析
android·flutter·ios