首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何配置haproxy将带有子字符串的网站发布到真正的后端服务器

如何配置haproxy将带有子字符串的网站发布到真正的后端服务器
EN

Server Fault用户
提问于 2020-04-23 15:22:07
回答 1查看 175关注 0票数 0

后端服务器的真实发布的网站是192.168.1.6:8888/abc和192.168.1.7:8888/abc,haproxy的ip是192.168.1.5,如何在haproxy中设置用户访问192.168.1.5:8888/abc时,http请求将被转发到真正的后端服务器(192.168.1.6:8888/abc和192.168.1.7:8888/abc)?默认后端服务器是192.168.1.8:8088和192.168.1.9。(默认的nginx网站)

+++++++++++++我的配置是+++++++++++++++

前端case3

代码语言:javascript
运行
复制
 bind 192.168.1.5:8888
代码语言:javascript
运行
复制
acl abc path_beg -i /abc

use_backend abc_servers if abc  

default_backend nginx1 

后端abc_servers

代码语言:javascript
运行
复制
mode tcp

balance roundrobin

server abc1 192.168.1.6:8888 cookie 

server abc2 192.168.1.7:8888 cookie 

后端nginx1

代码语言:javascript
运行
复制
balance roundrobin

server master1 192.168.1.8:8888 maxconn 1024 weight 5 check

server master2 192.168.1.9:80 maxconn 1024 weight 5 check

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

生效后,当我访问192.168.1.5:8888时,它可以访问nginx1的第一个服务器。但当我访问192.168.1.5:8888/abc时,它报告说:

////////////////////////////////////////////////////////

代码语言:javascript
运行
复制
         404 Not Found
         nginx/1.17.9

////////////////////////////////////////////////////////

EN

回答 1

Server Fault用户

发布于 2020-04-23 17:05:45

基本配置如下:

代码语言:javascript
运行
复制
frontend web.jerrywang.org
    bind 192.168.1.5:8888
    use_backend api_servers if { path_beg /abc/ }
    # default_backend web_servers  # The users will get 503 for anything else

backend api_servers
    balance roundrobin
    cookie SERVERUSED insert indirect nocache
    option httpchk HEAD /
    default-server check maxconn 20
    server server1 192.168.1.6:8888 cookie server1
    server server2 192.168.1.7:8888 cookie server2
票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1013802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档