在服务器上启动 RuoYi-App
,并通过 Nginx
进行代理配置,使其能够正常访问和运行。
RuoYi-App
是一个基于 RuoYi-Vue
的前端项目,通过 HBuilderX
进行开发和打包,可以生成适用于网站、Android、iOS
和小程序的静态文件。项目与后端完全分离,需要将后端服务和前端静态文件分别部署。
RuoYi-App
的配置文件 config.js
,设置后端 API
的 baseUrl
。HBuilderX
打包 RuoYi-App
项目,生成静态文件。Nginx
。Nginx
进行静态文件的服务和后端 API
的反向代理。ruoyi-app
├── config.js
├── unpackage
│ └── dist
│ └── build
│ └── h5
│ ├── index.html
│ ├── *.js
│ └── *.css
Nginx
。Nginx
配置文件路径和静态文件路径正确。config.js
在 RuoYi-App
目录下,编辑 config.js
文件,设置后端 API
的 baseUrl
。
// 应用全局配置
module.exports = {
baseUrl: 'https://vue.ruoyi.vip/prod-api',
// baseUrl: 'http://localhost:8080',
// 应用信息
appInfo: {
// 应用名称
name: "ruoyi-app",
// 应用版本
version: "1.0.0",
// 应用logo
logo: "/static/logo.png",
// 官方网站
site_url: "http://ruoyi.vip",
// 政策协议
agreements: [{
title: "隐私政策",
url: "https://ruoyi.vip/protocol.html"
},
{
title: "用户服务协议",
url: "https://ruoyi.vip/protocol.html"
}
]
}
}
HBuilderX
,加载 RuoYi-App
项目。发行 -> 网站-PC WEB或手机H5
。unpackage/dist/build/h5
目录下生成静态文件。unpackage/dist/build/h5
目录下的所有文件上传到服务器,例如 /home/ruoyi/projects/ruoyi-h5
目录。在服务器上编辑 Nginx
配置文件(例如 /etc/nginx/nginx.conf
),添加以下配置:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
charset utf-8;
location / {
root /home/ruoyi/projects/ruoyi-h5;
try_files uriuri/ /index.html;
index index.html index.htm;
}
# 默认所有路径
location /prod-api/ {
proxy_set_header Host http_host;
proxy_set_header X-Real-IPremote_addr;
proxy_set_header REMOTE_HOST remote_addr;
proxy_set_header X-Forwarded-Forproxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
# 反向代理配置
proxy_pass http://localhost:8080/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
sudo nginx -s reload
http://<服务器IP>
,可以看到 RuoYi-App
的首页。通过上述步骤,我们成功地在服务器上启动了 RuoYi-App,并通过 Nginx 进行代理配置,使其能够正常访问和运行。这样可以充分利用 Nginx 的静态文件服务和反向代理功能,保证前后端分离架构的高效运行。
powered by kaifamiao