zoukankan      html  css  js  c++  java
  • 首次前后端分离的项目部署经历

    1、环境简介

    前端(Vue)项目和后端(SpringBoot)项目部署在同一台服务器上,使用nginx做代理。

    数据库使用mysql,文件服务器使用minio,后端使用jar文件运行,使用gitlab-ci/cd自动部署。

    2、项目经历

    Ⅰ、问题:由于在本地测试时候,前端使用8080端口,后端使用8848端口,会产生跨域等系列问题。

           方案:本地可以通过在Vue的config目录下对index.js文件添加proxyTable进行代理,可参考proxyTable配置看看。

    Ⅱ、问题:线上部署,发现使用nginx配置后,请求无法转发成功。

           方案:可能原因是location的路径配置错误了,可以参考nginx的proxy_pass详解看看。

    Ⅲ、问题:做到上传头像功能时,发现没有实现会话保持功能。

           方案:可以使用session或者token来保持会话,将token或者sessionId存到cookie中去发送给前端。

                      如果想使用token,可以参考各个JWT库对比,我使用的是jose4j。

    Ⅳ、问题:在前端读取Cookie时,发现不可以读取。

           方案:原因是Cookie没有设置Path,浏览器调试它他为空。

    Ⅴ、问题:Cookie没有加密,信息泄漏。

           方案:可以通过Crypto库来进行加密,可以参考js加密以及后台解密

    Ⅵ、问题:SpringBoot的application.yml文件没有加密,信息泄漏。

           方案:可以通过Jasypt库来进行加密,可以参考Jasypt加密,密钥在运行jar时提供环境变量时配置,

           例如:jasypt.encryptor.password=salt(环境变量)或java -jar college.jar --jasypt.encryptor.password=salt

    Ⅶ、问题:项目部署成功后,发现刷新页面出现404。

           方案:可以参考nginx+vue刷新404

    三、项目地址

    ①、项目地址:https://gitlab.com/M-Anonymous/back_college_mail

    ②、演示地址:http://47.96.158.165/

  • 相关阅读:
    疫情控制
    2020 CSP-J 多校赛 Day 2 T2 题解
    三校联考-水题狂欢信心赛
    QBXT 提高组储备营 2020.夏 游记
    【题解】(我出的题)XM捡面筋
    【题解】P4025 [PA2014]Bohater
    【题解】1644:【例 4】佳佳的 Fibonacci
    【题解】CF1165F2 Microtransactions (hard version)
    P2261 [CQOI2007]余数求和
    OVO——扶咕咕的20道CF
  • 原文地址:https://www.cnblogs.com/M-Anonymous/p/14327438.html
Copyright © 2011-2022 走看看