Nginx多个前端服务配置方式详解

 更新时间:2022年03月23日 14:51:06   作者:哈啊哈铪  
这篇文章主要介绍了Nginx多个前端服务配置方式,主要包括多个location配置,多个server配置,配置方式本文给大家介绍的非常详细,感兴趣的朋友一起看看吧

需求

有多个前端服务需要通过Nginx部署。

Nginx多个前端服务配置方式

可以通过多个server配置或者多个location配置来配置多个前端服务。

多个location配置

location中root和alias的区别:location后面的路径是真实路径用root,虚拟路径用alias
真实路径就是本地访问地址里面有的路径
例如vue前端服务设置了publicPath='/allow-cost-calc'
前端访问路径为:http://localhost:8005/allow-cost-calc/#/login,/allow-cost-calc就是真实路径,则使用 location /allow-cost-calc配置时里面使用root 来指定前端服务路径(如下服务3配置)。

若前端访问路径为:http://localhost:8005/#/login,如果此时我们使用root来配置,那么location后面的路径只能使用真实路径,只能使用 /,但是多个服务配置时/有可能已被使用(例如下面被服务1配置了),所以需要使用虚拟路径来配置,如下服务2配置:使用/s2 来作为虚拟路径,使用alias来指定服务位置,部署后的访问方式要带上虚拟路径http://localhost:8005/s2/#/login

http {
    #嵌入其他配置文件 语法:include /path/file
	#参数既可以是绝对路径也可以是相对路径(相对于Nginx的配置目录,即nginx.conf所在的目录)
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;
	#限制上传文件大小
	client_max_body_size       20m;
    server { 
		client_max_body_size  100M;
        listen 1004;
        server_name  localhost, 127.0.0.1;
		#服务1
		location / {
		  root dist;
		  index index.html;
		}
		#服务2:由于/r2 是虚拟路径,所以用alias,会为访问dist3下面的首页
		location /r2 {
		  alias  dist3;
		#服务3:由于/allow-cost-calc 是真实路径,所以用root,会访问/allow-cost-calc/dist2下面的首页   
		#(vue打包时设置了publicPath = '/allow-cost-calc',同时打包后的文件也必须放到allow-cost-calc文件夹下 dists2/allow-cost-calc/前端包文件)
		location /allow-cost-calc {
		  root  dist2;
		
		#后端代理,后端代理不受前端路径的影响
        location /api/ {
            proxy_pass http://10.51.105.7:31500/;
            proxy_pass_request_headers on;
            proxy_set_header Host $host;
            proxy_set_header X-Client-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

多个server配置

每个前端服务独自使用一个server服务。nginx.conf部分配置如下:

http {
   #前端服务1
   server {
        root dist1;#前端包位置
        client_max_body_size 100M;
        listen 7001;
        server_name localhost, 127.0.0.1;
        location /api/ {
        	proxy_pass http://10.51.105.7:31500/;
            proxy_pass_request_headers on;
            proxy_set_header Host $host;
            proxy_set_header X-Client-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
   }
   #前端服务2
        root dist2;#前端包位置
        listen 7002;
}

到此这篇关于Nginx多个前端服务配置的文章就介绍到这了,更多相关Nginx配置多个前端内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nginx+Tomcat群集的实现示例

    Nginx+Tomcat群集的实现示例

    这篇文章主要介绍了Nginx+Tomcat群集的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • kubernetes启用PHP+Nginx网页环境教程

    kubernetes启用PHP+Nginx网页环境教程

    这篇文章主要介绍了kubernetes启用PHP+Nginx网页环境教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Nginx屏蔽服务器名称与版本信息方式(源码级修改)

    Nginx屏蔽服务器名称与版本信息方式(源码级修改)

    本文详解如何通过源码修改Nginx 1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复此操作
    2025-09-09
  • 一段万能的nginx接口实现反向代理配置

    一段万能的nginx接口实现反向代理配置

    这篇文章主要介绍了一段万能的nginx接口实现反向代理配置,详细的介绍了什么是反向代理及其接口反向代理的实现,非常具有实用价值,需要的朋友可以参考下
    2018-10-10
  • Nginx 413修改上传文件大小限制的方法详解

    Nginx 413修改上传文件大小限制的方法详解

    在使用 Nginx 作为 Web 服务器时,有时会遇到客户端尝试上传大文件时返回 ​​413 Request Entity Too Large​​ 的错误,本文将介绍如何通过配置 Nginx 来解决这个问题,有需要的可以参考下
    2025-05-05
  • Nginx服务器配置文件完全解析

    Nginx服务器配置文件完全解析

    这篇文章主要介绍了Nginx服务器配置文件完全解析,Nginx的异步非阻塞特性使其拥有非常出色的性能,需要的朋友可以参考下
    2015-08-08
  • nginx文件上传下载控制的实现示例

    nginx文件上传下载控制的实现示例

    本文主要介绍了nginx文件上传下载控制的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • nginx添加ssl模块的方法教程

    nginx添加ssl模块的方法教程

    这篇文章主要给大家介绍了关于nginx添加ssl模块的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习许吧。
    2017-12-12
  • 在Nginx服务器下配置StartSSL和SSL的教程

    在Nginx服务器下配置StartSSL和SSL的教程

    这篇文章主要介绍了在Nginx服务器下配置StartSSL和SSL的教程,其中申请证书的步骤确实比较麻烦一些,不过出于安全考虑:p需要的朋友可以参考下
    2015-07-07
  • windows查看nginx是否启动及常用命令小结

    windows查看nginx是否启动及常用命令小结

    这篇文章主要给大家介绍了关于windows查看nginx是否启动及常用命令的相关资料,在Windows系统中,可以使用以下命令来操作和管理Nginx,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-06-06

最新评论