您的位置:首页 > 财经 > 金融 > Nginx反向代理和前后端分离项目打包部署

Nginx反向代理和前后端分离项目打包部署

2024/11/18 11:33:42 来源:https://blog.csdn.net/m0_67496588/article/details/141262038  浏览:    关键词:Nginx反向代理和前后端分离项目打包部署

Nginx反向代理

Nginx的定位:主要用于做反向代理,一般都是用它来做前端页面的服务器,动态资源代理到后端服务器。这样做的好处是可以避免跨域请求带来的不便。

使用Nginx主要是对Nginx中的nginx.conf文件进行配置:

虚拟主机配置
server {listen   7777#端口号,不能被占用;server_name  localhost#如果是本机就可以用localhost,如果不是则使用ip地址;location /{ root F:\demo\dist;#代理的项目文件,如dist文件地址index index.html#项目中的主页html地址;}
}
反向代理配置
#以/demo/开始的请求会被代理到指定的服务器访问,如后端端口号
location /demo/ {proxy_pass   http://localhost:8080/;}
负载均衡配置
upstream demoServer {server localhost:8080;server localhost:9090;
}location /demo/ {proxy_pass  http://demoServer/;
}
  • 负载均衡—轮询

    upstream demoServer {server localhost:8080;server localhost:9090;
    }
    
  • 负载均衡—权重

    upstream demoServer {server localhost:8080 weight=2; #权重越大,被分配处理的请求越多server localhost:9090 weight=1;
    }
    
  • 负载均衡—ip_hash

    ip_hash就是通过请求的ip地址,使用hash算法,算出来应该访问那一台服务器,如果是ip地址没变,那么这个请求的服务器 就永远都不会变

    upstream demoServer {ip_hash; # 负载均衡规则server localhost:8080;server localhost:9090;
    }
    

前后端web项目CentOs部署

使用工具:Xftp 7,Xshell 7,7-Zip

前端部署

  • 前端项目,使用yarn build 命令打包成dist文件

  • 使用Xftp7连接上服务器后,使用7-Zip工具将dist文件打包成.tar压缩包,再压缩一遍压缩为.tar.gz,然后再Xftp7中拖入/usr/local目录中。

  • 使用命令解压

    tar zxvf dist.tar.gz -C /var/www/html
    #这里的-C表示指定位置解压,/var/www/html是解压的地址,也可以是其他位置,这个位置后续在Nginx的配置中要用到
    
  • 在Nginx中配置nginx.conf文件,一般在nginx目录下的/conf中

    cd /usr/nginx/conf
    vi nginx.conf #进入目录后进行修改
    
  • 在上文中介绍了如何配置Nginx,如果只有一台服务器只需要配置虚拟主机和反向代理

server {listen   7777#端口号,不能被占用;server_name  1.1.1.1#如果是本机就可以用localhost,如果不是则使用ip地址;location /{ root var/www/hrml/dist;#代理的项目文件,如dist文件地址index index.html#项目中的主页html地址;}
}#以/demo/开始的请求会被代理到指定的服务器访问,如后端端口号
location /demo/ {proxy_pass   http://localhost:8080/;}

然后启动niginx:

./usr/local/nginx/sbin/nginx #启动nginx
ps aux | grep nginx #查看nginx进程

后端部署

  • Java项目是以jar包的形式运行,因此使用Xhtp 7 工具将jar包拖进Linux系统中,如/usr/local
  • 使用命令运行:
cd /usr/local
java -jar demo.jar
  • 也可以后台运行:
nohup java -jar demo.jar > output.log 2>&1 &

其中output.log表示系统运行时的标准输出和错误文件,系统会自动创建该文件,并将输出和错误重定向到该文件。

  • 查看端口号是否运行,使用lsof命令,如果没有安装就先进行安装:

    yum install lsof
    
  • 然后查看端口进程:

    lsof -i :8080
    
  • 开放你的网站访问端口和后端代理端口,并重置防火墙以生效:

  •   firewall-cmd --zone=public --add-port=7777/tcp --permanentfirewall-cmd --zone=public --add-port=8080/tcp --permanentfirewall-cmd --reload

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com