向上游服务建立联系

  1. Syntax: proxy_connect_timeout time; #设置TCP三次握手超时时间,默认60秒;默认超时后报502错误
  2. Default: proxy_connect_timeout 60s;
  3. Context: http, server, location

  超时更换上游服务器处理请求

  1. Syntax: proxy_next_upstream http_502 | ..;
  2. Default: proxy_next_upstream error timeout;
  3. Context: http, server, location

  上游连接启用TCP keepalive的长连接

  1. Syntax: proxy_socket_keepalive on | off;
  2. Default: proxy_socket_keepalive off;
  3. Context: http, server, location

  

上游连接启用http长连接

  1. Syntax: keepalive connections;
  2. Default:
  3. Context: upstream
  4.  
  5. Syntax: keepalive_requests number;
  6. Default: keepalive_requests 100;
  7. Context: upstream

  修改tcp连接中的local address

  1. Syntax: proxy_bind address [transparent] | off;
  2. Default:
  3. Context: http, server, location
  4.  
  5. 可以使用的变量
  6. proxy_bind $remote_addr;
  7. 可以使用不属于所在机器的IP
  8. proxy_bind $remote_addr transparent;

  当客户端关闭连接时

  1. Syntax: proxy_ignore_client_abort on | off;
  2. Default: proxy_ignore_client_abort off;
  3. Context: http, server, location

  向上游服务发送HTTP请求;超时时间

  1. Syntax: proxy_send_timeout time;
  2. Default: proxy_send_timeout 60s;
  3. Context: http, server, location

  接收上游服务器HTTP响应头部

  1. Syntax: proxy_buffer_size size; #设置接收上游服务的头部最大值
  2. Default: proxy_buffer_size 4k|8k;
  3. Context: http, server, location

  接收上游服务器HTTP包体大小

  1. Syntax: proxy_buffers number size; # 接收上游服务器响应包大小内存设置
  2. Default: proxy_buffers 8 4k|8k;
  3. Context: http, server, location

  接收上游服务器的包体

  1. Syntax: proxy_buffering on | off; X-Accel-Buffering 头部
  2. Default: proxy_buffering on; #接收完完整的响应包在在响应给客户端
  3. Context: http, server, location
  4.  
  5. Syntax: proxy_max_temp_file_size size; #设之上游服务器响应包过大,后存入磁盘文件。文件大小的设置
  6. Default: proxy_max_temp_file_size 1024m;
  7. Context: http, server, location
  8.  
  9. Syntax: proxy_temp_file_write_size size; # 每一次向磁盘写入的字节数
  10. Default: proxy_temp_file_write_size 8k|16k;
  11. Context: http, server, location
  12.  
  13. Syntax: proxy_temp_path path [level1 [level2 [level3]]];# 设置存储文件的目录的路径
  14. Default: proxy_temp_path proxy_temp;
  15. Context: http, server, location

  及时转发的包体

  1. Syntax: proxy_busy_buffers_size size; #虽然设置缓存上游服务器的响应报文;但也可以接缓存一部分时就发送给客户
  2. Default: proxy_busy_buffers_size 8k|16k;
  3. Context: http, server, location

  接收上游服务器网络速率相关指令

  1. Syntax: proxy_read_timeout time; #两次读取超时时间
  2. Default: proxy_read_timeout 60s;
  3. Context: http, server, location
  4.  
  5. Syntax: proxy_limit_rate rate; #限制读取上游服务的响应
  6. Default: proxy_limit_rate 0;
  7. Context: http, server, location

  上游包体的持久化

  1. Syntax: proxy_store_access users:permissions ...; #从上游服务接收文件存入本地文件权限的配置方法
  2. Default: proxy_store_access user:rw;
  3. Context: http, server, location
  4.  
  5. Syntax: proxy_store on | off | string; # on的话会存到root对应的目录下;off不开启,string通过变量重新指定存放目录
  6. Default: proxy_store off;
  7. Context: http, server, location

  配置

  1. [root@python vhast]# cat shangyou.conf
  2. server {
  3. listen 8011;
  4. default_type text/plain;
  5. return 200 '8011 server response.\n';
  6. }
  7.  
  8. server {
  9. listen 8012;
  10. default_type text/plain;
  11. root html;
  12. location /{
  13. }
  14. location /test {
  15.  
  16. return 200 '8012 server response.
  17. uri: $uri
  18. method: $request_method
  19. requset: $request
  20. http_name: $http_name
  21. \n';
  22. }
  23. }
  24.  
  25. [root@python vhast]# cat proxy_method.conf
  26.  
  27. upstream haha{
  28. #ip_hash;
  29. #hash user_$arg_username;
  30. #server 127.0.0.1:8011;
  31. server 127.0.0.1:8012;
  32. #keepalive 32;
  33. }
  34. server {
  35. server_name proxy_pass.com;
  36. error_log rrups_error.log info;
  37. proxy_set_header Connection "";
  38. root /tmp;
  39. location /{
  40. #proxy_pass http://rrups/addurl;
  41. proxy_pass http://haha;
  42. proxy_store on;
  43. proxy_store_access user:rw group:rw all:r;
  44. }
  45. }
  46. [root@python vhast]# echo "qwertyuopuughgbbvvbaaa" > ../../html/a.txt
  47.  
  48. [root@python vhast]# ll /tmp/
  49. 总用量 0
  50. drwx------. 3 root root 17 7 5 12:35 systemd-private-1c111c1c3c844bb594508d0cf90d1752-chronyd.service-YE54pH
  51. drwx------. 3 root root 17 7 8 12:40 systemd-private-24aea6f6d72d4605a59e86dc56dacf2a-chronyd.service-1Ocoyt
  52. drwx------. 3 root root 17 7 9 12:05 systemd-private-d838c8aa5ea24b2d88e0e1c546dadbcf-chronyd.service-wNkAsB

  测试

  1. [root@python vhast]# curl proxy_pass.com/a.txt
  2. qwertyuopuughgbbvvbaaa
  3. [root@python vhast]# ll /tmp/
  4. 总用量 4
  5. -rw-rw-r--. 1 nginx nginx 23 7 12 22:07 a.txt
  6. drwx------. 3 root root 17 7 5 12:35 systemd-private-1c111c1c3c844bb594508d0cf90d1752-chronyd.service-YE54pH
  7. drwx------. 3 root root 17 7 8 12:40 systemd-private-24aea6f6d72d4605a59e86dc56dacf2a-chronyd.service-1Ocoyt
  8. drwx------. 3 root root 17 7 9 12:05 systemd-private-d838c8aa5ea24b2d88e0e1c546dadbcf-chronyd.service-wNkAsB

  

  

  

nginx 与上游服务器建立连接的相关设置的更多相关文章

  1. 【转】SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误

    SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误 最近在VS2013上连接远程数据库时,突然连接不上,在跑MSTest下跑的时候,QTAgent32 crash.换成IIS ...

  2. Nginx 当上游服务器返回失败时的处理办法

    陶辉95课 Syntax: proxy_next_upstream error | timeout | invalid_header | http_500 | http_502 | http_503  ...

  3. Sql server2012连接Sql server 2008时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误。(provider:SSL Provider,error:0-接收到的消息异常,或格式不正确。)

    以前连接是正常的,就这两天连不上了.(没有耐心的直接看末尾解决办法) 错误消息如下: 1.尝试读取或写入受保护的内存.这通常指示其他内存已损坏.(System.Data) 2.已成功与服务器建立连接, ...

  4. 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时)

    今天忽然间发现远程连接别人数据库会出现  已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - 等待的操作过时)  这种情况 ...

  5. SQLServer 2012 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时。

    楼主用SQL Server 2012 在连接其他电脑的实例时,一直提示“已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - ...

  6. 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: SSL Provider, error: 0 - 接收到的消息异常,或格式不正确。)

    之前做好的asp.net部署后,发现 访问数据库时: 异常:已捕获: "已成功与服务器建立连接,但是在登录过程中发生错误. (provider: SSL Provider, error: 0 ...

  7. vs 或 Sql server2012连接Sql server时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误

    以前连接是正常的,就这两天连不上了.(没有耐心的直接看末尾解决办法) 错误消息如下: 1.尝试读取或写入受保护的内存.这通常指示其他内存已损坏.(System.Data) 2.已成功与服务器建立连接, ...

  8. SQL Server(解决问题)已成功与服务器建立连接,但是在登录过程中发生错误。(provider: Shared Memory Provider, error:0 - 管道的另一端上无任何进程。

    http://blog.csdn.net/github_35160620/article/details/52676416 如果你在使用新创建的 SQL Server 用户名和密码 对数据库进行连接的 ...

  9. 使用Websocket与服务器建立连接

    handleMessage = () => { const url = '////'; //某url const token = getCookie('xnToken');//向后端发请求得登陆 ...

随机推荐

  1. JAVA中对null进行强制类型转换

    今天很好奇,对null进行强转会不会抛错.做了如下测试得到的结果是,如果把null强转给对象,是不会抛异常的,本身对象是可以为null的.但是如果是基本类型,比如 int i = (Integer)o ...

  2. 喵星之旅-狂奔的兔子-docker安装和基本使用

      一.前提条件 目前,CentOS 仅发行版本中的内核支持 Docker. 位.系统内核版本为 3.10 以上. 位系统.参考喵星之旅-狂奔的兔子-linux安装 二.CentOS 7下安装 Doc ...

  3. 喵星之旅-狂奔的兔子-linux安装

    一.前言 本文演示虚拟机安装,和真机区别可能在网卡驱动上有差异. 真机环境:CentOS Linux release 7.6.1810 (Core) 虚拟机(虽然centos系统自带虚拟机软件,但是习 ...

  4. 在linux下安装java(centos和ubuntu)

    在本地测试环境安装插件,发现还得用到java,虽说是个程序员,可是没用过java啊,哎,但是插件得用啊,怎么办啊?自己装呗 一.自己的系统:CentOS 7 1.查看CentOS自带JDK是否已安装. ...

  5. canvas的描述

    // 1.找到DOM节点 const canvas = document.getElementById('canvas'); // 2.画笔 --- canvas的上下文对象 const ctx = ...

  6. java篇 之 继承

    this代表正在使用类的对象(的引用) java支持重载:允许在同一个类中使用相同的方法名(重载类型只区分参数列表,包括参数 顺序,参数个数,参数数据类型,与方法返回类型无关) 匹配: 方法名 参数列 ...

  7. [QT] QT5.12 HTTPS请求 TLS initialization failed

    #前言 接触到了Qt的网络编程 然后尝试对一个http页面请求获取源码 是可以的 但是当对https界面发出请求的时候总是错误 TLC什么的初始化失败 百度也是没有结果 然后网上各种方法 比如说编译O ...

  8. java内存模型中工作内存并不一定会同步主内存的情况分析

    其实是为了填之前的一个坑  在一个多线程的案例中出现了阻塞的情况. https://www.cnblogs.com/hetutu-5238/p/10477875.html   其中的第二个问题,即多个 ...

  9. Educational Codeforces Round 77 (Rated for Div. 2)D(二分+贪心)

    这题二分下界是0,所以二分写法和以往略有不同,注意考虑所有区间,并且不要死循环... #define HAVE_STRUCT_TIMESPEC #include<bits/stdc++.h> ...

  10. 【译】高级T-SQL进阶系列 (四)【上篇】:使用游标进行行级别处理

    [译注:此文为翻译,由于本人水平所限,疏漏在所难免,欢迎探讨指正] 原文链接:传送门. 正常来说,使用游标并不是处理记录集的最佳方式.然而当一个经验丰富的程序员第一次开始写TSQL时,他们经常会寻找其 ...