nginx如何配置同一个端口转发多个项目

 更新时间:2024年01月26日 10:52:01   作者:万山寒  
这篇文章主要介绍了nginx如何配置同一个端口转发多个项目问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

nginx配置同一个端口转发多项目

nginx一般都是一个转发多个项目,所以需要学会配置这个

方式一

  • 配置多个server 监听端口,这种方法会占用好多个端口

方式二

  • 配置静态资源root的alias项
  • 配置不同前端静态资源访问不同后端,这里是用 # proxy_pass “http://ip:port/” 结尾的"/“,带上和不带是两种效果,去掉”/“,那么路径将接上location 正则匹配的路径,带上”/",就不会加上。

配置文件

#user  nobody;
worker_processes  8;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  2048;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    proxy_intercept_errors on;
    #tomcat未启动时
    fastcgi_intercept_errors on;

    sendfile        on;
    keepalive_timeout  65;
#   实例一的ip端口配置
    upstream testStream01 {
       server 127.0.0.1:8090;
    }
#   实例二的ip端口配置
    upstream testStream02 {
       server 127.0.0.1:8091;
    }

    server {
        listen       8080;
        server_name  localhost;
		#gzip on;
		#gzip_http_version 1.1;
		#gzip_comp_level 9;
		#gzip_vary on;
		#gzip_types text/plain application/json application/x-javascript application/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png image/x-ms-bmp;

        location / {
            root   /usr/share/nginx/html/test;
            index  login.html index.htm;
        }
#         实例一的前端页面,主要root 要换成alias
        location /project01 {
#         多个前端项目,需要使用alias
            alias   /usr/share/nginx/html/project01;
            index  login.html index.htm;
        }
#         实例二的前端页面
        location /project02 {
            alias   /usr/share/nginx/html/project02;
            index  login.html index.htm;
        }
#         开放静态资源
#          location  ^/project01/.*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$
#           {
#               alias /usr/share/nginx/html/project01/;
#               proxy_temp_path /usr/share/nginx/html/project01/;
#           }
#        前端请求后端的地址,将会= ip:port/project01 ,所以这里要去掉project01,
#         实例一的后端配置,主要看proxy_pass
		 location  /project01/testServer {

			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header Host $http_host;

			proxy_http_version 1.1;
			proxy_set_header Upgrade $http_upgrade;
			proxy_set_header Connection "upgrade";
			proxy_read_timeout 3600s;
			# proxy_pass "http://testStream01/" 结尾的"/",带上和不带是两种效果,去掉"/",那么路径将接上正则匹配的"/project01/testServer",带上"/",就不会加上。
            proxy_pass  http://testStream01/testServer;
# 			rewrite ^/project01/testServer(.*)$ /testStream01/$1 last;
        }
#         实例二的后端配置,主要看proxy_pass
		location  /project02/testServer {

			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header Host $http_host;

			proxy_http_version 1.1;
			proxy_set_header Upgrade $http_upgrade;
			proxy_set_header Connection "upgrade";
			proxy_read_timeout 3600s;
            proxy_pass  http://testStream02/testServer;
        }

    }


}


总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Nginx常用功能详解

    Nginx常用功能详解

    NGiNX 是个非常优秀的HTTP 服务器软件,可以通过设置有实现许多功能,如目录保护、IP访问限制、防盗链、下载限速及设置多域名等等
    2014-07-07
  • 国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例

    国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例

    这篇文章主要介绍了国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例,使用fastcgi配置模式,需要的朋友可以参考下
    2014-07-07
  • Nginx HTTPS实现原理及配置实践

    Nginx HTTPS实现原理及配置实践

    本文主要介绍了Nginx HTTPS实现原理及配置实践,详细的介绍了HTTPS原理,实现及其HTTPS单台配置实践,集群配置、优化等,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Nginx+SSL搭建 HTTPS 网站

    Nginx+SSL搭建 HTTPS 网站

    最近在研究nginx,整好遇到一个需求就是希望服务器与客户端之间传输内容是加密的,防止中间监听泄露信息,但是去证书服务商那边申请证书又不合算,因为访问服务器的都是内部人士,所以自己给自己颁发证书,忽略掉浏览器的不信任警报即可。下面是颁发证书和配置过程。
    2016-08-08
  • Nginx服务器中浏览器本地缓存和虚拟机的相关设置

    Nginx服务器中浏览器本地缓存和虚拟机的相关设置

    这篇文章主要介绍了Nginx服务器中浏览器本地缓存和虚拟机的相关设置,是Nginx服务器搭建过程中的基本配置,需要的朋友可以参考下
    2015-08-08
  • nginx配置返回文本或json的方法

    nginx配置返回文本或json的方法

    有些时候请求某些接口的时候需要返回指定的文本字符串或者json字符串,这篇文章主要介绍了nginx配置返回文本或json的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • 详解Nginx 被动检查服务器的存活状态

    详解Nginx 被动检查服务器的存活状态

    Nginx 可以持续测试您的上游服务器,避免出现故障的服务器,并将恢复的服务器优雅地添加到负载均衡组中。这篇文章主要介绍了Nginx 被动检查服务器的存活状态,需要的朋友可以参考下
    2021-10-10
  • Nginx tp3.2.3 404问题解决方案

    Nginx tp3.2.3 404问题解决方案

    这篇文章主要介绍了Nginx tp3.2.3 404问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12
  • nacos集群搭建Nginx负载均衡的操作详解

    nacos集群搭建Nginx负载均衡的操作详解

    这篇文章主要介绍了nacos集群搭建Nginx负载均衡的详细操作,文中通过代码示例和图文介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • nginx之queue的具体使用

    nginx之queue的具体使用

    本文主要介绍了nginx之queue的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06

最新评论