spa-server 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
spa-server 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
spa-server 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 Rust
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 lost_o0
适用人群 未知
收录时间 2022-03-23

软件简介

本软件是用来创建一个托管静态web页面的服务,目标是使单页应用部署简便、开销少、性能高。

  • 基于 Hyper 和 warp 构建。
  • SSL 基于 Rustls。
  • 服务器端缓存、客户端缓存(Cache-Content)、Gzip压缩。
  • SPA 版本管理, 仅需要一个 http 请求就能实现版本回滚和更新。
  • 支持热更新(Mac and Linux)。
  • 支持 CORS 跨域
  • http/https 同时服务(http 也可返回 redirect https)。
  • 支持 Docker 镜像(压缩后大小:32M)

服务跑起来

配置文件说明: config.release.conf.

可以通过修改环境变量 SPA_CONFIG=${config_path}, 来更改配置文件地址。

通过源码

git clone git@github.com:timzaak/spa-server.git
cd spa-server
git submodule init && git submodule update
cp config.release.conf config.conf # please remember to change `file_dir` in config.conf
cargo run --bin spa-server 

通过镜像

docker run -d -p 80 -p 443 -v $HOST_VOLUME:/data -v $CONFIG:/config.conf timzaak/spa-server:latest

如何部署静态文件

当服务跑起来后,可将 SPA 文件夹复制到 admin server 指定文件夹, (api doc).

scp $SPA_DIRECTORY user@ip:$(curl "http://$ADMIN_SERVER/upload/path?domain=$DOMAIN" -H "Authorization: Bearer $TOKEN")

等文件传输完毕, 发起 HTTP 请求更新 SPA 版本。

curl "http://$ADMIN_SERVER/update_version?domain=$DOMAIN&version=$VERSION" -H "Authorization: Bearer $TOKEN"

至此,部署完毕!

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
0 评论
2 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部