hosting 2 webapps sob 1 apache / tomcat

2

Estou tentando hospedar vários webapps no tomcat 6, atrás do apache2, por meio de mod_jk .

Eu estou no meu juízo final com isso. o problema que estou enfrentando é que ambos os domínios parecem apontar para um "domínio" de tomcat.

meu server.xml tem esta aparência:

<Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               URIEncoding="UTF-8"
               redirectPort="8443" />

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

    <Engine name="Catalina" defaultHost="example.com">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>

      <Host name="example.com"  appBase="webapps-example"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>

      <Host name="example.com"  appBase="webapps-example.com"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>     
    </Engine>
  </Service>

my workers.properties tem esta aparência:

worker.list=example,example2

worker.example.port=8009
worker.example.host=example.com
worker.example.type=ajp13

worker.example2.port=8010
worker.example2.host=example2.com
worker.example2.type=ajp13

finalmente meus vhosts do apache se parecem com isso:

<VirtualHost 10.160.211.7:80>
    ServerName example.com
    DocumentRoot /srv/www/example.com/public_html/
    ErrorLog /srv/www/example.com/logs/error.log
    CustomLog /srv/www/example.com/logs/access.log combined

    JkMount  /* example
</VirtualHost>

e

<VirtualHost 10.160.211.7:80>
    ServerName example2.com
    DocumentRoot /srv/www/example.com/public_html/
    ErrorLog /srv/www/example.com/logs/error.log
    CustomLog /srv/www/example.com/logs/access.log combined

    JkMount  /* example2
</VirtualHost>

quando eu faço login no gerenciador webapp no example.com e no example2.com, posso implantar em um caminho de contexto no exemplo, e esse mesmo caminho de contexto aparecerá no exemplo2 - então eu sei que esse é o mesmo tomcat domínio.

edit: acabou de encontrar isso no meu log mod_jk

[Sun Feb 20 21:15:43 2011] [28546:3075521168] [warn] map_uri_to_worker_ext::jk_uri_worker_map.c (962): Uri * is invalid. Uri must start with /
[Sun Feb 20 21:16:44 2011] [28548:3075521168] [info] ajp_send_request::jk_ajp_common.c (1496): (example) all endpoints are disconnected, detected by connect check (1), cping (0), send (0)

mas não tenho certeza do motivo pelo qual o exemplo não responderia

por favor ajude um irmão a sair

    
por mkoryak 20.02.2011 / 22:06

1 resposta

2

eu estava sendo um idiota. Acabei desligando o apache e conectando a 8080 em ambos os domínios. o problema persistiu, então eu sabia que não era um problema no mod_jk ou no apache.

o problema é que eu estava acessando ambos os domínios como www.domain, mas eu não aliasse esses subdomínios no tomcat

    
por 21.02.2011 / 16:09