2011-09-09 34 views
0

我是haproxy的新手,我試圖弄清楚如何做一些看起來很簡單的事情。我想代理一個tomcat上下文。使用Tomcat配置Haproxy以使用上下文

例如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餅乾tomcat1檢查

它不會工作...

任何想法? 感謝

回答

0

沒有人回答這個問題,但答案就在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>