Heim >Betrieb und Instandhaltung >Nginx >Wie Nginx basierend auf dem Pfad in der URL dynamisch an den Upstream weiterleitet

Wie Nginx basierend auf dem Pfad in der URL dynamisch an den Upstream weiterleitet

王林
王林nach vorne
2023-05-17 18:28:061493Durchsuche

场景1

/svr1/xxxx?yyy 转发到 svr1:8080/xxxx?yyy

/svr2/xxxx?yyy 转发到 svr2:8080/xxxx?yyy

配置如下:

location ~* /(srv[1-9]+)/(.*)$ {
  allow all;
  proxy_pass http://$1/$2$is_args$args; 
  proxy_set_header host $host;                         
  proxy_set_header x-forwarded-for $forwarded_addr;                                
}

upstream srv1 {                                                   
   server srv1-ip:8080;
}
      
upstream srv2 {                                                   
   server srv2-ip:8080;
}

场景2

svc1下有3个对等服务srv1,2,3,/svc1/xxxx?yyy 转发到,srv1/2/3:8080/xxxx?yyy

svc2下有3个对等服务srv4,5,6,/svc2/xxxx?yyy 转发到,svr4/5/6:8080/xxxx?yyy

location ~* /(svc[1-9]+)/(.*)$ {                             
  allow all;                                  
  proxy_pass http://$1/$1/$2$is_args$args;                   
  proxy_set_header host $host;
  proxy_set_header x-forwarded-for $forwarded_addr;                   
}

upstream svc1 {
  server srv1:8080;   
  server srv2:8080;   
  server srv3:8080;                
}

upstream svc2 {
  server srv3:8080;   
  server srv4:8080;   
  server srv5:8080;                
}

Das obige ist der detaillierte Inhalt vonWie Nginx basierend auf dem Pfad in der URL dynamisch an den Upstream weiterleitet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen