要将前端静态资源分别放到两个 Spring Boot 应用中,并利用 Nginx 的反向代理功能实现不同的路径加载,可以按照以下步骤进行配置:
1. 配置 Spring Boot 应用
假设你有两个 Spring Boot 应用,分别命名为 zhonglin-app
和 jiahao-app
,并且它们分别提供静态资源。
选择 Spring Initializr
在弹出的窗口中,选择 Spring Initializr
,然后点击 Next
。
配置项目
在 New Project
窗口中,配置以下选项:
- Project SDK:选择你安装的 JDK 版本。
- Type:选择
Maven
或Gradle
(根据喜好)。 - Language:选择
Java
。 - Group:输入项目的组 ID(例如
com.example
)。 - Artifact:输入项目的工件 ID(例如
demo
)。 - Name:输入项目名称(例如
demo
)。 - Description:输入项目的描述(可选)。
- Package:输入项目的包名(例如
com.example.demo
)。
配置完成后,点击 Next
。
选择依赖
在 Dependencies
窗口中,选择你需要的 Spring Boot 依赖。(仅引入Spring Web也可以)
例如:
- Spring Web:用于构建 Web 应用。
- Spring Data JPA:用于数据库访问。
- Spring Boot DevTools:用于开发工具。
- Thymeleaf:用于模板引擎。
zhonglin-app
配置
在 zhonglin-app
的 application.properties
中配置静态资源路径:
# application.properties
spring.resources.static-locations=classpath:/static/zhonglin/
2. 配置 Nginx
在 Nginx 中配置反向代理,将不同的路径代理到不同的 Spring Boot 应用。
假设 zhonglin-app
运行在 localhost:8080
,jiahao-app
运行在 localhost:8081
,Nginx 配置如下:
vim /etc/nginx/nginx.conf
将以下内容粘贴到文件中:
server {
listen 80;
server_name yourdomain.com;
location /zl {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
3. 检查 Nginx 配置
在重新加载 Nginx 配置之前,先检查配置文件是否有语法错误:
sudo nginx -t
如果配置文件没有错误,你会看到类似以下的输出:
4. 重新加载 Nginx
重新加载 Nginx 以应用更改:
sudo systemctl reload nginx
5. 打包上传到对应文件夹下
在idea部署,确保 zl-app
在localhost:8082
上运行。
打包成jar文件 blog.csdn.net/qq_33505109…
jar文件传输到Ubuntu系统下目标文件
scp -r D:/zl.jar root@39.108.210.131:/home/project-test
6. 运行并访问
java -jar zl.jar
访问以下路径:
http://yourdomain.com/zl/resume.html
Nginx 会将这些请求分别代理到 zl-app
,并返回相应的静态资源。
退出使用 Ctrl+C
其他问题
后台启动SpringBoot项目
nohup java -jar zl.jar &
查找进程PID,杀死进程
ps aux
//root 43428 0.2 11.9 2877680 229780 pts/0 Sl+ 13:56 0:13 java -jar zl-app-0.0.1-SNAPSHOT.jar
kill 43428