若依框架前后端分离nginx
时间: 2024-12-28 16:28:21 浏览: 8
### 若依框架前后端分离与Nginx配置
#### 一、环境准备
为了确保能够顺利地完成若依框架的前后端分离并利用Nginx作为反向代理服务器,需先准备好必要的软件环境。这包括但不限于Java运行环境用于启动后端服务,Node.js及其构建工具链用于前端开发,以及Nginx本身。
对于Nginx的安装,在基于Debian或Ubuntu系统的Linux环境中可以通过命令`apt -y install nginx`来快速部署[^1]。此过程会自动处理依赖关系并将Nginx设置为开机自启的服务。
#### 二、后端服务部署
针对若依框架这样的Java项目,通常是以JAR包的形式发布。在实际操作中,应当将编译好的`ruoyi-admin.jar`文件上传至目标服务器,并通过指定其绝对路径的方式启动应用实例[^3]:
```bash
nohup java -jar /path/to/your/ruoyi-admin.jar &
```
这里假设已经完成了项目的打包工作;如果尚未完成,则需要按照官方文档指引先行执行Maven或其他构建工具来进行打包操作[^4]。
#### 三、前端资源托管
由于采用了前后端完全解耦的设计模式,因此前端页面不再由Spring Boot内置Tomcat提供静态资源访问支持。而是应该独立构建React/Vue等现代单页应用程序(SPA),将其产物放置于专门设计用来承载这些静态文件的地方——比如另一个子域名下的Web根目录下,或者是直接放在Nginx所管理的空间内。
#### 四、Nginx配置调整
为了让客户端请求可以被正确路由到对应的API接口或是加载HTML/CSS/JS等前端资产,必须编辑位于`/etc/nginx/sites-available/default` (视具体发行版而定) 或者其他适当位置上的站点配置文件,添加如下所示的内容片段以定义转发规则:
```nginx
server {
listen 80;
server_name yourdomain.com;
location /api/ { # API前缀可以根据实际情况修改
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;
}
location / { # SPA入口地址匹配
root /usr/share/nginx/html; # 修改成你自己的前端build输出路径
try_files $uri $uri/ /index.html; # 支持history mode的历史记录导航方式
}
}
```
上述配置实现了两个主要功能:一是当接收到带有`/api/`开头URL时,将会把该请求转交给本地监听8080端口的若依后台服务去处理;二是任何未命中特定API路径的GET请求都将尝试从预设的位置读取相应文件,最终指向首页`index.html`以便让JavaScript接管后续逻辑控制流。
最后记得重启Nginx使更改生效:
```bash
sudo systemctl restart nginx
```
阅读全文