【问题标题】:Redirect on HAProxy在 HAProxy 上重定向
【发布时间】:2018-11-25 16:04:44
【问题描述】:

我正在尝试在 HAProxy 中复制 apache 中所做的以下配置,但到目前为止没有成功。

<VirtualHost *:80>
    ProxyPreserveHost On
    ServerName alpha.app.int
    ProxyPass / http://127.0.0.1:8080/app/
    ProxyPassReverse / http://127.0.0.1:8080/app/
</VirtualHost>

我想要做的是当访问地址“alpha.app.int”时,HAProxy 会自动将所有请求定向到 JBoss 中正在侦听“127.0.0.1:8080/app/”的我的应用程序,但是当我尝试通过前面提到的 url 访问时,我最终落在了 JBoss 的配置屏幕上,而不是在我的应用程序中,我只能通过访问“alpha.app.int/app/”来查看它。有人对如何做到这一点有任何建议吗?

HAProxy 设置:

frontend app
    bind *:80
    mode http
    default_backend frontend app

backend app
    mode http
    option forwardfor
    server alpha 127.0.0.1:8080/app

【问题讨论】:

    标签: http redirect centos haproxy


    【解决方案1】:

    你可以试试:

    frontend app
        bind *:80
        acl path_root path /
        redirect location https://www.example.com/app/ if path_root
        default_backend             app
    
    backend app
        mode http
        option forwardfor
        server alpha 127.0.0.1:8080
    

    【讨论】:

    • 谢谢,您的解决方案完美运行。但我认为它在 .com 之后的 redirect 属性值有额外的斜线
    • 您的解决方案对我非常有用,但现在我需要稍微调整一下,我需要它让客户在 url 中只看到地址 example.com而不是 example.com/app,你知道我该如何重写 url 吗?
    猜你喜欢
    • 1970-01-01
    • 2018-08-25
    • 1970-01-01
    • 2015-10-27
    • 2021-03-20
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 2017-02-13
    相关资源
    最近更新 更多