您可以使用Nodejs将您的Flutter Web 应用程序部署在共享主机中,或者使用Python在VPS服务器中部署您的 Flutter Web 应用程序。
在您使用“flutter build web”构建您的 Flutter Web 应用程序并且您希望将其托管在共享托管计划中之后,将您的 nodejs 应用程序准备为您的 Flutter Web 应用程序的简单服务器,这里是示例代码
应用程序.js
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var app = express();
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public-flutter')));
module.exports = app;
包.json
{
"name": "flutter-web-app",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"cookie-parser": "~1.4.4",
"debug": "~2.6.9",
"express": "~4.16.1",
"morgan": "~1.9.1"
}
}
创建一个文件夹并将其命名(“public-flutter”),然后将您的 Flutter Web 应用程序放入您刚刚创建的文件夹中,以便 nodejs 可以通过他的服务器提供它,如果您在共享主机中,只需继续此处的博客文章
如果您在 VPS 服务器中,那么如果您想为 nodejs 应用程序提供服务器,请运行此命令
node app.js
或者如果您不希望 nodejs 只需在您的 Flutter Web 应用程序中使用 python 来使用此命令将其用作简单的 http 服务器
nohup python -m SimpleHTTPServer 8000 &
只需确保在运行命令时位于 Web 应用程序文件夹中。即使您在 Linux 上关闭了 SSH 会话,“nohub”也会让命令继续运行。或者,您可以使用dhttpd包通过 Dart pub/webdev 工具为您的应用程序提供服务。