• springboot+vue/react工程如何部署在ngix?


    前端vue/react工程部署ngix方法:

    1、前端vue/react工程打完包之后,上传到ngix服务器相应目录;(建议:前端工程应配置工程服务名,也就是publicPath,如不配置,ngix访问的时候可以直接IP或者域名访问,多个工程不友好)
    2、ngix作相应配置,大概如下:

    location /edu-platform {
        root  /data/mystatic/;
        index  index.html index.htm;
        try_files $uri /edu-platform/index.html;             
    }
    

    注意:前端vue/react工程,如果路由模式为history模式,则ngix配置应加上try_files(不配置刷新页面会出现404错误),也就是ngix会尝试从硬盘找到index.html文件,将这个文件发送给用户。路由模式为hash模式,则不需要配置;
    3、如果后端未配置跨域,则可以在ngix配置反向代理,相关配置如下:

    location /vue-mall-api {
        rewrite ^/vue-mall-api/(.*)$ /$1 break;
        proxy_pass http://127.0.0.1:5000;
    }
    

    springboot工程部署ngix方法:

    springboot工程可以打包成jar包或war包,相应部署服务器上也有多种方法,这里只介绍将jar包部署在ngix上
    1、springboot工程打包,可通过mvn install命令打包,也可以在idea中,clean package打包;
    2、上传jar包到服务器相应目录;
    3、在jar包同级目录新建application.properties配置文件,在里面可以加入springboot工程不同环境配置,比如工程名、端口、mysql配置等等。(当然也可以不用新建此文件,直接用工程里的配置即可,但这样,每次打包前需要修改不同环境,比较繁琐且容易出错)。
    4、ngix做相应配置,可参考配置如下:

    #edu-platform-server
    location /edu-platform-server {
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:6180;
    }
    

    其中,location斜杠后面的对应就是工程名,下面的端口也要和springboot工程的端口保持一致;
    5、用nohup守候进程方式运行jar包,命令如下:

    nohup java -jar xxxxx.jar --spring.config.location=./application.properties >temp.log 2>&1 &
    

    此命令,指定了jar运行的配置文件以及日志输入方式。
    至此,前后端分离的spingboot+vue/react工程部署完毕。
    6、查看springboot工程进程,可用命令

    ps -ef|grep java
    

    7、杀死进程

    kill -9 pid
    
  • 相关阅读:
    seafile-docker
    nextcloud-docker
    nexus升级
    vSphere中设置K3OS
    文件大小排序
    Java SpringBoot Beetl模板
    电商 Python 生成刷单公司需要的评论格式2
    电商 Python 生成刷单公司需要的评论格式
    电商 Python 访客Excel合并
    Java SpringBoot Thymeleaf模板
  • 原文地址:https://www.cnblogs.com/jone-chen/p/13724403.html
Copyright © 2020-2023  润新知