0

我是 haproxy 的新手,我正试图弄清楚如何做一些看起来很简单的事情。我想代理一个tomcat上下文。

例如http://bobsautomotive.com:8080/HelloWorld

这是我的 haproxy 配置:

 global
    daemon
    maxconn 256
    log 127.0.0.1 local0

defaults
    mode http
    option httplog
    option logasap
    log global

    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms

frontend http-in
    bind *:80
    default_backend servers

backend servers
    balance roundrobin
    option redispatch
    option httpclose
    option forwardfor
    cookie JSESSIONID prefix
    server one tomcat.bobsautomotive.com:8009 cookie tomcat1 check
    stats uri /admin?stats
    stats realm haproxy
    stats scope .

这可以很好地访问 Tomcat 主页。但是,如果我尝试将其更改为使用以下上下文:

服务器一 tomcat.bobsautomotive.com:8009/han cookie tomcat1 check

它不会工作...

有任何想法吗?谢谢

4

1 回答 1

1

这个问题没有人回答,但答案在于在tomcat server.xml中设置一个默认主机

<Engine defaultHost="spaceman" jvmRoute="s1" name="Catalina> 
<Host appBase="webapps" name="spaceman">
  <Context docBase="quoteEngine" path="" reloadable="false" source="org.eclipse.jst.jee.server:spaceman"/>
   <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log." resolveHosts="false" suffix=".txt"/>
  </Host>
</Engine>
于 2011-09-19T23:47:42.593 回答