先说最简单的方案------静态资源托管。这是最常见也最直接的部署方式,执行npm run build生成build文件夹,然后把里面的东西一股脑儿扔到静态服务器上就完事了。不过这里有个坑要注意,如果你的应用用了前端路由,比如React Router,记得配置服务器支持history模式,否则刷新页面就是404。Nginx的话可以这么配置:
Apache则需要在.htaccess文件里添加FallbackResource。这种方案适合纯静态项目,部署简单快捷,但缺少服务端渲染,对SEO不太友好。
接着来说说Docker容器化部署,这在微服务架构下特别流行。先编写Dockerfile,从node:alpine基础镜像开始,复制代码,安装依赖,构建生产版本,最后用nginx作为运行环境。这样做的好处是环境隔离,部署一致性强,配合CI/CD流水线可以实现自动化部署。不过需要额外学习Docker相关技术栈,对于小项目来说可能有点重。