nginx前后台分离打包部署项目(nodejs、springboot)
程序员文章站
2022-03-26 21:42:06
...
@[TOC]目录
#1. 为什么要用nginx进行前后台分离?
a. 无需做前后台集成打包,当需要对前端代码进行迭代部署时,仅需要对特定目录下的前端代码进行替换即可,便于维护部署;
b. 解决跨域问题,如我在192.168.1.20上部署的前端代码,要向192.168.1.21上部署的后台发送请求,可以正常访问(无论内网跨域还是外网跨域)
#2. nginx发布vue前端
- 【建议】新建一个目录,拉取远程项目(前端和服务端都拉取到这里)
2. 进入项目目录,shift+右键,打开powershell窗口,执行cnpm install命令(加载node_modules)
3. 执行npm run build,将以下static文件夹、index文件(建议换个名字,以防和nginx的html目录下的index.html冲突)打包成dist.zip即可
4. 使用 rz命令或者 sftp将dist.zip
上传至服务器目录,删除旧版本项目数据(如果有的话)。
cd /usr/share/nginx/html 【ENTER】
rm -rf wechat.html 【ENTER】
rm -rf static/ 【ENTER】
5. 拷贝dist.zip
至nginx发布目录,解压,前端部署完成。
mv ${dist.zip的路径}/dist.zip /usr/share/html/dist.zip或者 cp ${dist.zip的路径}/dist.zip /usr/share/html/dist.zip
unzip dist.zip
#3. springboot后端打包部署
1. 进入项目目录,shift+右键,打开powershell窗口;执行mvn clean和mvn package -DskipTests -Pprod命令
// 清理
mvn clean
// 打包,跳过junit单元测试,选择profile环境为prod环境。即使用application-prod.yml作为配置文件。
mvn package -DskipTests -Pprod
2. 生成snapshot.jar文件,上传到linux服务器,运行后台,java -jar xxx.jar
#4. Linux上的nginx.conf配置:
nginx转发后台服务配置:
location ^~ /equipment {
proxy_pass http://127.0.0.1:8099/;
}
上一篇: Python源码剖析 - 对象初探
下一篇: 盘点7个强大的NODE.JS框架