文档章节

NGINX 反向代理

y
 yunxill
发布于 2017/05/05 08:44
字数 436
阅读 4
收藏 0

大致流程

  1. 在http模块中配置upstream
  2. 在server模块中将服务器与upstream绑定

配置本机多端口服务器(模拟多台服务器)

server {
        listen       82;
        server_name  127.0.0.1;
        root   "C:\phpStudy\WWW\test2";
        location / {
            index  index.html index.htm index.php;
            #autoindex on;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}
server {
        listen       81;
        server_name  127.0.0.1 phpStudy.net;
        root   "C:\phpStudy\WWW\test1";
        location / {
            index  index.html index.htm index.php;
            #autoindex on;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}

配置 upstream

upstream 参数

server 192.168.0.100:80 : 负载均衡后端RealServer的IP或者域名,端口不写的话默认为80。高并发场景用域名,再通过DNS进行负载均衡

  1. server : 反向代理后端RealServer的IP或者域名,端口不写的话默认为80。高并发场景用域名,再通过DNS进行负载均衡
  2. weight : 权重,默认为1,权重越大接收的请求越多
  3. max_fails : 最大尝试的失败次数,默认为1,0表示禁止失败尝试
  4. fail_timeout : 失败超时时间,默认是10秒,通常3s左右比较合适
  5. backup : 热备配置,前段RealServer出现问题后会自动上线backup服务器
  6. down : 标志服务器不可用,这个参数通常配合IP_HASH使用

upstream 设置

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

    #access_log logs/access.log main;
    upstream backend {
             server 127.0.0.1:81 weight=1;(之前配置的两个本机端口)
             server 127.0.0.1:82 weight=3;
         }
  }

Server 绑定

 server {
        listen       80;
        server_name  fronthome.com;

        #charset koi8-r;

        #access_log logs/host.access.log main;
        root   "C:\phpStudy\WWW\advanced\frontend\web";
        location / {
           index  index.html index.htm index.php l.php;
           autoindex  on;
           proxy_pass  http://backend;//通过这里来绑定我们之前配置的upsteam
        }
    }

这里只是简单的实现了反向代理,还有很多相关配置,留给以后探索吧

本文转载自:http://blog.csdn.net/ucmir183/article/details/64921630

y
粉丝 0
博文 19
码字总数 0
作品 0
徐州
私信 提问
Nginx代理服务器使用阿里云文件存储NAS

Nignx应用场景 Nginx 是一个很强大的高性能Web和代理服务,它具有很多非常优越的特性。反向代理应该是 Nginx一种最常见的应用模式。 反向代理(Reverse Proxy)方式是指以代理服务器来接受 ...

曜斯
02/25
0
0
Nginx反向代理并替换内容模块ngx_http_substitutions_filter_modu

====== 以前写过Nginx反向代理通过with-httpsubmodule和substitutions4nginx模块替换正文内容和URL和在军哥lnmp的环境下配置反向代理服务器的方法教程 本教程基于军哥lnmp环境,其他Nginx类同...

adbug
2016/02/16
707
0
用nginx TCP反向代理作mail邮件代理

用nginx TCP反向代理作mail邮件代理 用nginx TCP反向代理作mail邮件代理 1. 背景 新版本nginx有TCP反向代理功能,nginx的mail proxy配置认证又太麻烦,于是就想用TCP反向功能作mail代理。 2....

ygqygq2
2017/08/22
0
0
获取用户的真实ip

常见的坑有两个: 一、获取的是内网的ip地址。在nginx作为反向代理层的架构中,转发请求到php,java等应用容器上。结果php获取的是nginx代理服务器的ip,表现为一个内网的地址。php获取REMOT...

蜗牛奔跑
2016/03/08
41
0
.NET Core容器化之多容器应用部署@Docker-Compose

1.引言 紧接上篇.NET Core容器化@Docker,这一节我们先来介绍如何使用Nginx来完成.NET Core应用的反向代理,然后再介绍多容器应用的部署问题。 2. Why Need Nginx .NET Core中默认的Web Ser...

圣杰
2017/12/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊dubbo的DataStore

序 本文主要研究一下dubbo的DataStore DataStore dubbo-2.7.2/dubbo-common/src/main/java/org/apache/dubbo/common/store/DataStore.java @SPI("simple")public interface DataStore { ......

go4it
昨天
0
0
17.windows上安装kafka并简单应用

1.单机版 1.1 安装jdk 略 1.2 安装zookeeper https://my.oschina.net/springMVCAndspring/blog/3045210 1.3 安装window上安装kafka 1.3.1 下载 http://kafka.apache.org/downloads 1.3.2 解压......

20190513
昨天
1
0
缓存雪崩

缓存雪崩原因:大批次的缓存数据,同一时刻过期 解决方案: 1、尽可能避免所有缓存在同一时刻过期,即:合理调整过期策略 2、对条件加锁 伪代码: public ProductselectProduct(String id){ ...

少年已不再年少
昨天
9
0
所以说这才是Redis进化史吗?看Redis是如何变成最强缓存的

写在前面:笔者翻阅了很多资料,只能找到Redis2.2及以后的主要版本的发布日志。所以,让我们从2.2开始一步一步深入了解Redis。 2.2 redis-cli命令非常大的改进: Tab补全,支持help(例如help ...

Java干货分享
昨天
14
0
manjaro抽风,/usr/lib/modules目录丢失

现象 2019年6月16日这周,突然发现manjaro抽风: 先是启动时无法加载一些内核模块,导致启动失败 然后用启动盘重新pacman -S linux,第一次启动是好的,再启动就有问题了 原因 翻来覆去搞不定...

chuqq
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部