nginx 代理多个服务器——多个server方式

原文链接:https://blog.csdn.net/wild46cat/article/details/52997005

-------------------------------------------------------------

配置文件下载地址:https://download.csdn.net/download/zengmingen/10462400

nginx 代理多个服务器——多个server方式

上一篇文章(http://blog.csdn.net/wild46cat/article/details/52840125)介绍了nginx的基本配置和使用方法,并且简单的介绍了一下如何利用nginx结合tomcat进行使用,达到反向代理的作用。现在我们要使用nginx达到这样的一个目的,能够代理多个服务器。
首先修改配置文件:
[plain] view plaincopy
  1. #user  nobody;  
  2. worker_processes  1;  
  3.   
  4. #error_log  logs/error.log;  
  5. #error_log  logs/error.log  notice;  
  6. #error_log  logs/error.log  info;  
  7.   
  8. #pid        logs/nginx.pid;  
  9.   
  10.   
  11. events {  
  12.     worker_connections  1024;  
  13. }  
  14.   
  15.   
  16. http {  
  17.     include       mime.types;  
  18.     default_type  application/octet-stream;  
  19.   
  20.     #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  
  21.     #                  '$status $body_bytes_sent "$http_referer" '  
  22.     #                  '"$http_user_agent" "$http_x_forwarded_for"';  
  23.   
  24.     #access_log  logs/access.log  main;  
  25.   
  26.     sendfile        on;  
  27.     #tcp_nopush     on;  
  28.   
  29.     #keepalive_timeout  0;  
  30.     keepalive_timeout  65;  
  31.   
  32.     #gzip  on;  
  33.   
  34.     server {  
  35.         listen       9922;  
  36.         server_name  firstProxyServer;  
  37.   
  38.         #charset koi8-r;  
  39.   
  40.         #access_log  logs/host.access.log  main;  
  41.   
  42.         #location / {  
  43.            #root   html;  
  44.             #index  index.html index.htm;  
  45.         #}  
  46.         location / {  
  47.             proxy_pass http://localhost:8989;  
  48.         }  
  49.   
  50.         #error_page  404              /404.html;  
  51.   
  52.         # redirect server error pages to the static page /50x.html  
  53.         #  
  54.         error_page   500 502 503 504  /50x.html;  
  55.         location = /50x.html {  
  56.             root   html;  
  57.         }  
  58.   
  59.         # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
  60.         #  
  61.         #location ~ \.php$ {  
  62.         #    proxy_pass   http://127.0.0.1;  
  63.         #}  
  64.   
  65.         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
  66.         #  
  67.         #location ~ \.php$ {  
  68.         #    root           html;  
  69.         #    fastcgi_pass   127.0.0.1:9000;  
  70.         #    fastcgi_index  index.php;  
  71.         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  
  72.         #    include        fastcgi_params;  
  73.         #}  
  74.   
  75.         # deny access to .htaccess files, if Apache's document root  
  76.         # concurs with nginx's one  
  77.         #  
  78.         #location ~ /\.ht {  
  79.         #    deny  all;  
  80.         #}  
  81.     }  
  82.   
  83.      server {  
  84.         listen       9977;  
  85.         server_name  secondProxyServer;  
  86.   
  87.         #charset koi8-r;  
  88.   
  89.         #access_log  logs/host.access.log  main;  
  90.   
  91.         #location / {  
  92.            #root   html;  
  93.             #index  index.html index.htm;  
  94.         #}  
  95.         location / {  
  96.             proxy_pass http://localhost:8080;  
  97.         }  
  98.   
  99.         #error_page  404              /404.html;  
  100.   
  101.         # redirect server error pages to the static page /50x.html  
  102.         #  
  103.         error_page   500 502 503 504  /50x.html;  
  104.         location = /50x.html {  
  105.             root   html;  
  106.         }  
  107.   
  108.         # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
  109.         #  
  110.         #location ~ \.php$ {  
  111.         #    proxy_pass   http://127.0.0.1;  
  112.         #}  
  113.   
  114.         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
  115.         #  
  116.         #location ~ \.php$ {  
  117.         #    root           html;  
  118.         #    fastcgi_pass   127.0.0.1:9000;  
  119.         #    fastcgi_index  index.php;  
  120.         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  
  121.         #    include        fastcgi_params;  
  122.         #}  
  123.   
  124.         # deny access to .htaccess files, if Apache's document root  
  125.         # concurs with nginx's one  
  126.         #  
  127.         #location ~ /\.ht {  
  128.         #    deny  all;  
  129.         #}  
  130.     }  
  131.   
  132.     # another virtual host using mix of IP-, name-, and port-based configuration  
  133.     #  
  134.     #server {  
  135.     #    listen       8000;  
  136.     #    listen       somename:8080;  
  137.     #    server_name  somename  alias  another.alias;  
  138.   
  139.     #    location / {  
  140.     #        root   html;  
  141.     #        index  index.html index.htm;  
  142.     #    }  
  143.     #}  
  144.   
  145.   
  146.     # HTTPS server  
  147.     #  
  148.     #server {  
  149.     #    listen       443 ssl;  
  150.     #    server_name  localhost;  
  151.   
  152.     #    ssl_certificate      cert.pem;  
  153.     #    ssl_certificate_key  cert.key;  
  154.   
  155.     #    ssl_session_cache    shared:SSL:1m;  
  156.     #    ssl_session_timeout  5m;  
  157.   
  158.     #    ssl_ciphers  HIGH:!aNULL:!MD5;  
  159.     #    ssl_prefer_server_ciphers  on;  
  160.   
  161.     #    location / {  
  162.     #        root   html;  
  163.     #        index  index.html index.htm;  
  164.     #    }  
  165.     #}  
  166.   
  167. }  

其中主要的是有两个server,每个server对应的被代理的服务器的不同。从而实现了nginx代理多个服务器的目的。
下面是两个服务server的配置:
[plain] view plaincopy
  1. server {  
  2.         listen       9922;  
  3.         server_name  firstProxyServer;  
  4.   
  5.         #charset koi8-r;  
  6.   
  7.         #access_log  logs/host.access.log  main;  
  8.   
  9.         #location / {  
  10.            #root   html;  
  11.             #index  index.html index.htm;  
  12.         #}  
  13.         location / {  
  14.             proxy_pass http://localhost:8989;  
  15.         }  
  16.   
  17.         #error_page  404              /404.html;  
  18.   
  19.         # redirect server error pages to the static page /50x.html  
  20.         #  
  21.         error_page   500 502 503 504  /50x.html;  
  22.         location = /50x.html {  
  23.             root   html;  
  24.         }  
  25.   
  26.         # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
  27.         #  
  28.         #location ~ \.php$ {  
  29.         #    proxy_pass   http://127.0.0.1;  
  30.         #}  
  31.   
  32.         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
  33.         #  
  34.         #location ~ \.php$ {  
  35.         #    root           html;  
  36.         #    fastcgi_pass   127.0.0.1:9000;  
  37.         #    fastcgi_index  index.php;  
  38.         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  
  39.         #    include        fastcgi_params;  
  40.         #}  
  41.   
  42.         # deny access to .htaccess files, if Apache's document root  
  43.         # concurs with nginx's one  
  44.         #  
  45.         #location ~ /\.ht {  
  46.         #    deny  all;  
  47.         #}  
  48.     }  
  49.   
  50.      server {  
  51.         listen       9977;  
  52.         server_name  secondProxyServer;  
  53.   
  54.         #charset koi8-r;  
  55.   
  56.         #access_log  logs/host.access.log  main;  
  57.   
  58.         #location / {  
  59.            #root   html;  
  60.             #index  index.html index.htm;  
  61.         #}  
  62.         location / {  
  63.             proxy_pass http://localhost:8080;  
  64.         }  
  65.   
  66.         #error_page  404              /404.html;  
  67.   
  68.         # redirect server error pages to the static page /50x.html  
  69.         #  
  70.         error_page   500 502 503 504  /50x.html;  
  71.         location = /50x.html {  
  72.             root   html;  
  73.         }  
  74.   
  75.         # proxy the PHP scripts to Apache listening on 127.0.0.1:80  
  76.         #  
  77.         #location ~ \.php$ {  
  78.         #    proxy_pass   http://127.0.0.1;  
  79.         #}  
  80.   
  81.         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000  
  82.         #  
  83.         #location ~ \.php$ {  
  84.         #    root           html;  
  85.         #    fastcgi_pass   127.0.0.1:9000;  
  86.         #    fastcgi_index  index.php;  
  87.         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  
  88.         #    include        fastcgi_params;  
  89.         #}  
  90.   
  91.         # deny access to .htaccess files, if Apache's document root  
  92.         # concurs with nginx's one  
  93.         #  
  94.         #location ~ /\.ht {  
  95.         #    deny  all;  
  96.         #}  
  97.     }  

下面是测试的结果:
首先两个tomcat中部署两个服务器:



然后启动nginx。
cmd下:start nginx

分别访问这两个server:
http://localhost:9922/ngtt/


http://localhost:9977/testnnnn/



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537959.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL Server如何链接到 Oracle并查询其中的数据?并实现做接口

今天用Oracle的驱动教大家如何从SQL Server链接到Oracle. 1. 服务器上需要安装Oracle 64位的客户端或者服务端,安装过程就省略了。不会的同学可以网上搜索一下安装方法,很详细,这里不赘述。 安装完成后SQL Server的访问接口上会新增”OraOLE…

java spring bean配置文件_Spring基于xml文件配置Bean过程详解

这篇文章主要介绍了spring基于xml文件配置Bean过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下通过全类名来配置:class:bean的全类名,通过反射的方式在IOC容器中创建B…

win10升级后chrome碰到对话框就卡死

低版本的 chrome 会出现这样的问题 解决方法: 设置-------高级设置-----取消硬件加速

客户端SDK测试思路

本文来自网易云社区作者:万春艳是什么客户端SDK是为第三方开发者提供的软件开发工具包,包括SDK接口、开发文档和Demo示例等。SDK和应用之间是什么关系呢?以云信即时消息服务为例,如下图所示,应用客户端通过调用云信SDK…

SQL中使用DISTINCT显示多个字段的方法(不使用DISTINCT了)

原文连接: https://www.cnblogs.com/alanliu/archive/2008/02/25/1080626.html --------------------------------- 效果是DISTINCT CUS_NO,并且同时显示CUS_NAME.SELECTCUS_NO,MIN(CUS_NAME) ASCUS1 FROMdbo.CUS GROUPBYCUS_NO

016 pickle

英文也是泡菜的意思。 学完了,还是感觉这个模块是蛮不错的,对多数据保存到文件中,然后在使用的时候,再读取出来,让程序闲的更加优雅,简洁。 一:介绍 1.为什么使用 在开篇已经介绍了,…

用java编写日历添加窗口一角_Java 实训4 编写一个窗体程序显示日历

实训要求:1.使用BorderLayout 进行总体布局2.在North 位置放置包含两个按钮( 上月和下月)的Panel3.在South 位置放置一个Label 用于显示当前年份和月份4.在Center 位置放置一个显示日历的Panel5.显示日历的Panel 设置7 行7 列的GridLayout 布局,其中第1行…

ER图转换成关系模式集的规则

转自己博客园文章 A与B1:1 在A表里把B表的主键和关系的属性加入到A表中 或B表里把A表的主键和关系的属性加入到B表中 举例 男人表身份证号姓名年龄女人身份证号登记日期女人表身份证号姓名年龄 A与B1:N 在A表中加入B表的主键与关系的属性 小米公司纳税号公司全称…

python3数字类型分为_Python初学3——数字类型及操作

一、数1.1 整数类型( 十、二、八、十六进制 )python中整数类型与数学中的整数概念一致,有正有负,取值任意。整数的表示形式:整数类型表示形式举例十进制34,163,210二进制0b1101 或 0B1101八进制0o357 或 0O357十六进制0x45ac 或 0X45ac1.2 浮…

idea 2018.1 创建springboot开启找回Run Dashboard

原文连接&#xff1a;https://www.cnblogs.com/yangtianle/p/8818255.html ---------------------------------------------------------------------------------配置方法首先找到项目中.idea文件下的workspace.xml开打接下来找到<component name"RunDashboard"&…

微信支付-服务端-bug排查记录

微信支付服务端需要对微信官方的统一下单接口发送请求获取prepayId作为app端调用支付的凭证&#xff0c;如果返回签名错误&#xff0c;首先排查代码层面的错误。 方法&#xff1a;使用微信官方的签名算法检验。 地址&#xff1a;https://pay.weixin.qq.com/wiki/doc/api/jsapi.…

Sqlserver备份存储过程

查了网上找不到快速备份Sqlserver存储过程的方法&#xff0c;心里想&#xff0c;如果Sqlserver不自带这个功能&#xff0c;真是太low了。步骤1&#xff1a;打开存储过程文件夹步骤2&#xff1a;按 F7 键&#xff0c;打开“对象资源管理器详细信息”窗口步骤3&#xff1a;点击“…

小哼买书JAVA编写,04_小哼买书

现在来看一个具体的例子“小哼买书”(根据全国青少年信息学奥林匹克联赛 NOIP2006 普及组第一题改编),来实践一下 章所学的三种排序算法。Paste_Image.png小哼的学校要建立一个图书角,老师派小哼去找一些同学做调查,看看同学们都喜欢读哪些书。小哼让每个同学写出一个自己最想读…

php 接口安全解决方案,php接口数据安全解决方案(一)

前言目的&#xff1a;1.实现前后端代码分离&#xff0c;分布式部署2.利用token替代session实现状态保持&#xff0c;token是有时效性的满足退出登录&#xff0c;token存入redis可以解决不同服务器之间session不同步的问题&#xff0c;满足分布式部署3.利用sign&#xff0c;前端…

Teamview连接Windows server问题

场景&#xff1a; 服务器在集团总部杭州&#xff0c;网管在集团宁波分公司&#xff0c;连接服务器通过内网远程桌面。过程&#xff1a; 网管给了tv的账号&#xff0c;密码。连接的时候一直连不上去。卡在“正在初始化连接参数”。后来网管不信&#xff0c;远程桌面了下&#xf…

nginx An attempt was made to access a socket in a way forbidden by its access permissions

在安装了 sqlserver2008 的win7 与 win2008 上启动 nginx&#xff0c;绑定80端口&#xff0c;报错&#xff1a; nginx An attempt was made to access a socket in a way forbidden by its access permissions查了百度&#xff0c;说修改注册表&#xff0c;但我的电脑上找不到文…

php的cms是什么意思,phpcms是什么系统

什么是phpcms&#xff1f;Phpcms 是国内领先的网站内容管理系统&#xff0c;同时也是一个开源的PHP开发框架。Phpcms由内容模型、会员、问吧、专题、财务、订单、广告、邮件订阅、 短消息、自定义表单、全站搜索等20多个功能模块组成&#xff0c;内置新闻、图片、下载、信息、产…

【python】 time模块和datetime模块详解 【转】

一、time模块 time模块中时间表现的格式主要有三种&#xff1a; a、timestamp时间戳&#xff0c;时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 b、struct_time时间元组&#xff0c;共有九个元素组。 c、format time 格式化时间&#xff0c;已格式化的结构使时间更…

spring boot Exception in Thread “main” java.lang.classNoFoundException

在客户测试环境部署&#xff0c;通过打包成jar&#xff0c;使用命令 nohup java -jar /usr/local/tomcat/shirencai/ct-peixun-provider.jar –spring.profiles.activestage > /usr/local/tomcat/shirencai/ct-peixun-provider-temp.txt & 报错后来排查以为是内存不够。…

php源码自动识别文本中的链接,自动加载识别文件Auto.php

用于本应用的控制器自动加载类设置&#xff0c;用法如同\CodeIgniter\Config\AutoloadConfig自动加载识别文件:dayrui/App/应用目录/Config/Auto.php语法格式&#xff1a;<?php // 自动加载识别文件return [/*** 命名空间映射关系*/psr4 > [],/*** 类名映射关系*/classm…