宝塔部署springboot vue ruoyi前后端分离项目,分离lib、resources

发布于:2024-08-02 ⋅ 阅读:(70) ⋅ 点赞:(0)

1、“文件”中创建好相关项目目录,并将项目相关文件传到对应目录
    例如:项目名称/                #项目总目录
                             api/                #存放jar项目的Java项目文件
                             manage/        #vue管理后端界面
                                       uploads/    #上传文件保存位置,在manage目录下或其他(记得加伪静态)
                             ......
                            
2、“添加Java项目” 
    1) 选择项目jar路径, 前面"文件"创建好的jar主启动文件
    2) 确认好端口 例如:8081
    3) 项目JDK, 一定要确认好项目所支持的版本,否则启动失败
    4) 项目执行命令
       a) 如果项目是打成一个jar包的,不需要做修改,直接用
       b) 如果是拆包编译的需要加入,注意位置和空格,一般在主jar包前面

-Dloader.path=/路径/api/resources,/路径/api/lib

     5) 前后端分离  勾选
       a) 后端url: 根据vue打包时vite.config.js中的server.proxy填写 例如: /prod-api
       b) 前端url: 不需要做修改
       c) 前端根目录: 前面"文件"创建好的vue界面目录

 

3、"确定"就可以了吗?
   如果是单一jar包编译的项目,确实是没什么问题了,
   但是如果是 拆包编译的,那么还需要做修改
    1) 点击对应"项目名称"->"伪静态"

# 重写规则,确保前端路由正常工作, 解决刷新时资源 404
location / {
  try_files $uri $uri/ /index.html;
}

    2) 点击对应"项目名称"->"配置文件"
      这边一定注意,不要随意修改,
      找到"location /prod-api { "  在" { "下面一行加入,加入后前端调用接口地址才正常

rewrite ^/prod-api/(.*)$ /$1 break;	#去除 /prod-api 前缀

4、仅供参考的配置(中文记得改)

#---项目执行命令---

/www/server/java/jdk1.8.0_371/bin/java -jar -Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -Dloader.path=/www/wwwroot/项目总目录/api/resources,/www/wwwroot/项目总目录/api/lib /www/wwwroot/项目总目录/api/ruoyi-admin.jar --server.port=8083
	
#---伪静态---

	# 重写规则,确保前端路由正常工作
	location / {
		try_files $uri $uri/ /index.html;
	}
	

#---配置文件---

	# HTTP反向代理相关配置开始 >>>
    location ~ /purge(/.*) {
        proxy_cache_purge cache_one $Host$request_uri$is_args$args;
    }

    location /prod-api {
        # 去除 /prod-api 前缀
	    rewrite ^/prod-api/(.*)$ /$1 break;
        proxy_pass http://127.0.0.1:8081;
        proxy_set_header Host $Host:$server_port;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header REMOTE-HOST $remote_addr;
        add_header X-Cache $upstream_cache_status;
        proxy_set_header X-Host $host:$server_port;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 30s;
        proxy_read_timeout 86400s;
        proxy_send_timeout 30s;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
    # HTTP反向代理相关配置结束 <<<