非常教程

Nginx参考手册

ngx_stream_proxy_module

ngx_stream_proxy_module

  • 示例配置
  • 指令
  • proxy_bind
  • proxy_buffer_size
  • proxy_connect_timeout
  • proxy_download_rate
  • proxy_next_upstream
  • proxy_next_upstream_timeout
  • proxy_next_upstream_tries
  • proxy_pass
  • proxy_protocol
  • proxy_responses
  • proxy_ssl
  • proxy_ssl_certificate
  • proxy_ssl_certificate_key
  • proxy_ssl_ciphers
  • proxy_ssl_crl
  • proxy_ssl_name
  • proxy_ssl_password_file
  • proxy_ssl_server_name
  • proxy_ssl_session_reuse
  • proxy_ssl_protocols
  • proxy_ssl_trusted_certificate
  • proxy_ssl_verify
  • proxy_ssl_verify_depth
  • proxy_timeout
  • proxy_upload_rate

所述ngx_stream_proxy_module模块(1.9.0)允许在TCP,UDP(1.9.13)和UNIX域套接字代理数据流。

示例配置

server {
    listen 127.0.0.1:12345;
    proxy_pass 127.0.0.1:8080;
}

server {
    listen 12345;
    proxy_connect_timeout 1s;
    proxy_timeout 1m;
    proxy_pass example.com:12345;
}

server {
    listen 53 udp;
    proxy_responses 1;
    proxy_timeout 20s;
    proxy_pass dns.example.com:53;
}

server {
    listen [::1]:12345;
    proxy_pass unix:/tmp/stream.socket;
}

指令

句法:

proxy_bind地址透明| 关闭;

默认:

语境:

流,服务器

进行到代理服务器的传出连接源自指定的本地IP address。参数值可以包含变量(1.11.2)。该特殊值off取消了proxy_bind从先前配置级别继承的指令的效果,这允许系统自动分配本地IP地址。

transparent参数(1.11.0)允许与代理服务器传出连接从一个非本地的IP地址发起,例如,来自客户端的实际IP地址:

proxy_bind $remote_addr transparent;

为了使此参数有效,需要以超级用户权限运行nginx工作进程,并配置内核路由表以拦截来自代理服务器的网络流量。

句法:

proxy_buffer_size大小;

默认:

proxy_buffer_size 16k;

语境:

流,服务器

设置size用于从代理服务器读取数据的缓冲区。还设置size用于从客户端读取数据的缓冲区。

句法:

proxy_connect_timeout时间;

默认:

proxy_connect_timeout 60s;

语境:

流,服务器

定义与代理服务器建立连接的超时时间。

句法:

proxy_download_rate率;

默认:

proxy_download_rate 0;

语境:

流,服务器

限制从代理服务器读取数据的速度。在rate被以每秒字节数指定。零值禁用速率限制。该限制是根据连接设置的,因此如果nginx同时打开到代理服务器的两个连接,整体速率将是指定限制的两倍。

句法:

proxy_next_upstream在|上 关闭;

默认:

proxy_next_upstream on;

语境:

流,服务器

当无法建立到代理服务器的连接时,确定是否将客户端连接传递给下一台服务器。

将连接传递给下一台服务器可能会受到尝试次数和时间的限制。

句法:

proxy_next_upstream_timeout时间;

默认:

proxy_next_upstream_timeout 0;

语境:

流,服务器

限制允许将连接传递到下一台服务器的时间。该0值将关闭此限制。

句法:

proxy_next_upstream_tries编号;

默认:

proxy_next_upstream_tries 0;

语境:

流,服务器

限制将连接传递到下一台服务器的可能尝试次数。该0值将关闭此限制。

句法:

proxy_pass地址;

默认:

语境:

服务器

设置代理服务器的地址。该地址可以指定为域名或IP地址,以及端口:

proxy_pass localhost:12345;

或者作为UNIX域套接字路径:

proxy_pass unix:/tmp/stream.socket;

如果域名解析为多个地址,则所有这些地址都将以循环方式使用。另外,地址可以被指定为服务器组。

地址也可以使用变量(1.11.3)指定:

proxy_pass $upstream;

在这种情况下,在所描述的服务器组中搜索服务器名称,并且如果未找到,则使用解析器来确定。

句法:

proxy_protocol on | 关闭;

默认:

proxy_protocol关闭;

语境:

流,服务器

启用PROXY协议以连接到代理服务器。

句法:

proxy_responses编号;

默认:

语境:

流,服务器

如果使用UDP协议,则设置代理服务器为响应客户端请求而预期的数据报数量。默认情况下,数据报的数量不受限制:响应数据报将被发送,直到proxy_timeout值到期。

句法:

proxy_ssl在|上 关闭;

默认:

proxy_ssl关闭;

语境:

流,服务器

启用S​​SL / TLS协议以连接到代理服务器。

句法:

proxy_ssl_certificate文件;

默认:

语境:

流,服务器

指定一个file带PEM格式的证书,用于对代理服务器进行身份验证。

句法:

proxy_ssl_certificate_key文件;

默认:

语境:

流,服务器

指定一个file带有PEM格式的密钥,用于对代理服务器进行身份验证。

句法:

proxy_ssl_ciphers密码;

默认:

proxy_ssl_ciphers DEFAULT;

语境:

流,服务器

指定用于连接到代理服务器的启用密码。密码以OpenSSL库理解的格式指定。

完整列表可以使用“ openssl ciphers”命令查看。

句法:

proxy_ssl_crl文件;

默认:

语境:

流,服务器

指定一个filePEM格式的撤销证书(CRL),用于验证代理服务器的证书。

句法:

proxy_ssl_name名称;

默认:

来自proxy_pass的proxy_ssl_name主机;

语境:

流,服务器

允许覆盖用于验证代理服务器证书的服务器名称,并在与代理服务器建立连接时通过SNI传递。服务器名称也可以使用变量(1.11.3)指定。

默认情况下,使用proxy_pass地址的主机部分。

句法:

proxy_ssl_password_file文件;

默认:

语境:

流,服务器

指定file密码的密码,其中每个密码在单独的行上指定。加载密钥时会依次尝试密码。

句法:

proxy_ssl_server_name在|上 关闭;

默认:

proxy_ssl_server_name off;

语境:

流,服务器

在与代理服务器建立连接时,启用或禁用通过TLS服务器名称指示扩展(SNI,RFC 6066)传递服务器名称。

句法:

在|上使用proxy_ssl_session_reuse 关闭;

默认:

proxy_ssl_session_reuse on;

语境:

流,服务器

确定在使用代理服务器时是否可以重用SSL会话。如果错误“ SSL3_GET_FINISHED:digest check failed”出现在日志中,请尝试禁用会话重用。

句法:

proxy_ssl_protocols SSLv2 TLSv1 TLSv1.2;

默认:

proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

语境:

流,服务器

启用指定的协议以连接到代理服务器。

句法:

proxy_ssl_trusted_certificate文件;

默认:

语境:

流,服务器

指定file带有用于验证代理服务器证书的PEM格式的可信CA证书。

句法:

proxy_ssl_verify on | 关闭;

默认:

proxy_ssl_verify off;

语境:

流,服务器

启用或禁用验证代理服务器证书。

句法:

proxy_ssl_verify_depth数字;

默认:

proxy_ssl_verify_depth 1;

语境:

流,服务器

设置代理服务器证书链中的验证深度。

句法:

proxy_timeout超时;

默认:

proxy_timeout 10m;

语境:

流,服务器

timeout在客户端或代理服务器连接上设置两次连续的读取或写入操作。如果在这段时间内没有数据传输,则连接关闭。

句法:

proxy_upload_rate率;

默认:

proxy_upload_rate 0;

语境:

流,服务器

限制从客户端读取数据的速度。在rate被以每秒字节数指定。零值禁用速率限制。限制是根据连接设置的,所以如果客户端同时打开两个连接,整体速率将是指定限制的两倍。

ngx_stream_proxy_module
Nginx

Nginx是一款轻量级的 Web 服务器/反向代理服务器及电子邮件代理服务器,可在 BSD-like 协议下发行。其特点是占有内存少,并发能力强。

主页 https://nginx.org/
源码 http://hg.nginx.org/nginx
发布版本 1.13.6

Nginx目录

1.指南 | Guides
2.核心 | Core
3.ngx_google_perftools_module
4.ngx_http_access_module
5.ngx_http_addition_module
6.ngx_http_api_module
7.ngx_http_auth_basic_module
8.ngx_http_auth_jwt_module
9.ngx_http_auth_request_module
10.ngx_http_autoindex_module
11.ngx_http_browser_module
12.ngx_http_charset_module
13.ngx_http_core_module
14.ngx_http_dav_module
15.ngx_http_empty_gif_module
16.ngx_http_f4f_module
17.ngx_http_fastcgi_module
18.ngx_http_flv_module
19.ngx_http_geoip_module
20.ngx_http_geo_module
21.ngx_http_gunzip_module
22.ngx_http_gzip_module
23.ngx_http_gzip_static_module
24.ngx_http_headers_module
25.ngx_http_hls_module
26.ngx_http_image_filter_module
27.ngx_http_index_module
28.ngx_http_js_module
29.ngx_http_keyval_module
30.ngx_http_limit_conn_module
31.ngx_http_limit_req_module
32.ngx_http_log_module
33.ngx_http_map_module
34.ngx_http_memcached_module
35.ngx_http_mirror_module
36.ngx_http_mp4_module
37.ngx_http_perl_module
38.ngx_http_proxy_module
39.ngx_http_random_index_module
40.ngx_http_realip_module
41.ngx_http_referer_module
42.ngx_http_rewrite_module
43.ngx_http_scgi_module
44.ngx_http_secure_link_module
45.ngx_http_session_log_module
46.ngx_http_slice_module
47.ngx_http_spdy_module
48.ngx_http_split_clients_module
49.ngx_http_ssi_module
50.ngx_http_ssl_module
51.ngx_http_status_module
52.ngx_http_stub_status_module
53.ngx_http_sub_module
54.ngx_http_upstream_conf_module
55.ngx_http_upstream_hc_module
56.ngx_http_upstream_module
57.ngx_http_userid_module
58.ngx_http_uwsgi_module
59.ngx_http_v2_module
60.ngx_http_xslt_module
61.ngx_mail_auth_http_module
62.ngx_mail_core_module
63.ngx_mail_imap_module
64.ngx_mail_pop3_module
65.ngx_mail_proxy_module
66.ngx_mail_smtp_module
67.ngx_mail_ssl_module
68.ngx_stream_access_module
69.ngx_stream_core_module
70.ngx_stream_geoip_module
71.ngx_stream_geo_module
72.ngx_stream_js_module
73.ngx_stream_limit_conn_module
74.ngx_stream_log_module
75.ngx_stream_map_module
76.ngx_stream_proxy_module
77.ngx_stream_realip_module
78.ngx_stream_return_module
79.ngx_stream_split_clients_module
80.ngx_stream_ssl_module
81.ngx_stream_ssl_preread_module
82.ngx_stream_upstream_hc_module
83.ngx_stream_upstream_module