问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Nginx部署多个前端项目如何实现配置隔离?Nginx多项目部署

创作时间:
作者:
@小白创作中心

Nginx部署多个前端项目如何实现配置隔离?Nginx多项目部署

引用
CSDN
1.
https://m.blog.csdn.net/baynotbar/article/details/139289634

在使用Nginx部署多个前端项目时,如何实现配置隔离是一个常见的需求。本文将介绍一种通过创建独立配置文件目录并引入自定义配置的方式来实现这一目标的方法。

简介

Nginx是一个功能十分强大的HTTP web服务器,其高性能、支持反向代理和负载均衡的特性使得其在Web项目中应用十分广泛。我们将前端项目打包部署在Nginx的Html(www)目录下,并需要在conf目录下的nginx.conf文件中写入相关配置(server、upstream等),此时如果部署了多个前端项目,一个文件中配置多个不同的server耦合度太高且维护较为繁琐,因此实现多项目环境下的配置隔离尤其重要。

解决方案

1. 创建project.conf目录

我们可以在Nginx的conf目录下(也就是nginx.conf所在的目录,Mac或Linux系统是在/etc/nginx目录下)创建一个存放各个前端项目配置文件的目录:

2. 为各个前端项目创建其差异化配置

在这个文件夹里我们可以依次为各个项目创建其专属配置文件,例如我这里为我的前端项目orange-app创建它的配置:

那么这个conf文件里写什么呢?我们只需要写每个项目存在差异的配置即可,如:

  • serverlisen(监听的端口号)、location(项目路径名)
  • upstreamserver(网关地址)等等

示例如下:

3. 在nginx.conf文件中引入自定义配置

OK差异化的配置写好了,那么通用配置写在哪呢?当然是写在唯一的nginx.conf里了,编辑

nginx.conf文件,只需在http块中加入

include project.conf/*.conf;  

即可,表示引入project.conf目录下所有以conf结尾的文件(即自定义的配置文件),可以理解为默认会将自定义的配置文件中的内容拼接插入到这个位置,这样就实现了多项目部署下的配置隔离。这里可以将nginx.conf理解为Nginx所有项目中的全局配置,project.conf目录下的各个配置文件是各个前端项目的局部配置。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号