nginx中的两个模块的proxy_pass的区别是什么

  介绍

本篇内容介绍了nginx中”的两个模块的proxy_pass的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

<代码> 1。ngx_stream_proxy_module 模块的<代码> proxy_pass>

只能在服务器段使用使用,只需要提供域名或ip地址和端口。

可以理解为端口转发,可以是tcp端口,也可以是udp端口。

server  {   ,,,listen  127.0.0.1:12345;   ,,,proxy_pass  127.0.0.1:8080;   }   ,   server  {   ,,,listen  12345;   ,,,proxy_connect_timeout  1 s;   ,,,proxy_timeout  1米;   ,,,proxy_pass  example.com: 12345;   }   ,   server  {   ,,,listen  53, udp;   ,,,proxy_responses  1;   ,,,proxy_timeout  20年代;   ,,,proxy_pass  dns.example.com: 53个;   }   ,   server  {   ,,,listen  [:: 1]: 12345;   ,,,proxy_pass  unix:/tmp/stream.socket;

<代码> 2。ngx_http_proxy_module 模块的<代码> proxy_pass> <李>

需要在段位置,位置中的如果段,limit_except段中使用,

<李>

处理需要提供域名或ip地址和端口外,还需要提供协议,如“http"或“https"

<李>

还有一个可选的uri可以配置。

3. proxy_pass后,后端服务器的url (request_uri)情况分析

server  {   ,,,listen ,,,,, 80;   ,,,server_name  www.test.com;   ,   ,,,#,情形   ,,,#,访问,http://www.test.com/testa/aaaa   ,,,#,后端的request_uri为:/甲壳aaaa级   ,,,的位置^ ~,/甲壳,{   ,,,,,,,proxy_pass  http://127.0.0.1:8801;   ,,,}   ,,,,   ,,,#,情形   ,,,#,访问,http://www.test.com/testb/bbbb   ,,,#,后端的request_uri为:/bbbb   ,,,的位置^ ~,/的/,{   ,,,,,,,proxy_pass  http://127.0.0.1:8801;   ,,,}   ,   ,,,#,情形C   ,,,#,下面这段位置是正确的   ,,,的位置~,/testc  {   ,,,,,,,proxy_pass  http://127.0.0.1:8801;   ,,,}   ,   ,,,#,情形   ,,,#,下面这段位置是错误的   ,,#   ,,,#,nginx  -t 时,会报如下错误:,   ,,#   ,,,#,nginx:,(紧急情况),“proxy_pass", cannot  have  URI  part 位置拷贝given  by  regular    号,,,,,,趁机inside  named 位置,趁机inside “if",声明中,趁机inside    ,,,#,“limit_except", block 拷贝/opt/app/nginx vhost/conf//test.conf: 17   ,,,#,   ,,,#,当位置为正则表达式时,proxy_pass 不能包含URI部分。本例中包含了“/?   ,,,的位置~,/testd  {   ,,,,,,,proxy_pass  http://127.0.0.1:8801;,,, #,记住,位置为正则表达式时,不能这样写! ! !   ,,,}   ,   ,,,#,情形E   ,,,#,访问,http://www.test.com/ccc/bbbb   ,,,#,后端的request_uri为:/aaa/ccc/bbbb   ,,,的位置/ccc/, {   ,,,,,,,proxy_pass  http://127.0.0.1:8801 aaa request_uri美元;   ,,,}   ,   ,,,#,情形   ,,,#,访问,http://www.test.com/namea/ddd   ,,,#,后端的request_uri为:/永福吗?对=ddd   ,,,的位置/对,{   ,,,,,,,rewrite ,,,/对([^/]+),/永福吗?对=1美元,打破;   ,,,,,,,proxy_pass  http://127.0.0.1:8801;   ,,,}   ,   ,,,#,情形G   ,,,#,访问,http://www.test.com/nameb/eee   ,,,#,后端的request_uri为:/永福? nameb=eee   ,,,的位置/nameb, {   ,,,,,,,rewrite ,,,/nameb/([^/] +),/永福? nameb=1美元,打破;   ,,,,,,,proxy_pass  http://127.0.0.1:8801;   ,,,}   ,   ,,,access_log /数据/logs/www/www.test.com.log;   }   ,   server  {   ,,,listen ,,,,, 8801;   ,,,server_name  www.test.com;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

nginx中的两个模块的proxy_pass的区别是什么