Log In       View a printable version of the current page.    
  Dashboard > People > Israel Freitas > 2008 > Agosto > 20 > Configurando um host virtual no Tomcat
Added by Israel Freitas, last edited by Israel Freitas on Ago 21, 2008  (view change)
Labels: 

Esta configuração é necessária quando uma aplicação (ou um site) vai ser acessada diretamente na raiz de um domímio da Internet. Monstraremos passo-a-passo como fazê-la no Tomcat ("gato", para os íntimos).

  1. Criar um diretório que conterá os diretórios do Domínio. O diretório do domínio pode ser qualquer um, mas por questão de organização sugiro a criação de um que contenha todos os de domínios, que por sua vez conterão suas respectivas aplicações. No exemplo este diretório será chamado de "dominios".
    Fique atento!

    Não esqueça de dar permissão de escrita ao gato quando criar o diretório base das aplicações. Isto é importante para que os arquivos war possam ser descompactados. Acho que não preciso dizer que se não der permissão de leitura também não funcionará. Ou preciso? O_o

  2. Criar o diretório
    [nome.do.dominio]
    que representará o domínio que está sendo configurado. Este também pode receber qualquer nome, mas utilizaremos o mesmo do domínio por questão de organização. No exemplo este diretório será chamado de teste.com (apesar deste domínio existir de verdade. Curioso, não?).
  3. Configurar o gato para responder ao domínio que está sendo criado. Isto consiste na criação de um novo elemento "Host" no arquivo server.xml ($CATALINA_HOME/conf/server.xml). Para fazer isto basta editar o server.xml adicionando o trecho a seguir imediatamente antes de "</Engine>", no final do arquivo.
    <Host name="teste.com" appBase="c:\dominios\teste.com" unpackWARs="true"
                autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
            <Context path="" docBase="diretorioDaAplicacaoPrincipal" reloadable="true"/>
          </Host>

    Alguns atributos da tag <Host>:

  • name: nome do host virtual que está sendo criado. Ou seja, o nome do domínio, conforme registrado no DNS.
  • appBase: diretório base para as aplicações que serão disponibilizadas através deste host virtual. Deve ser utilizado o caminho absoluto para o diretório. Uma coisa interessante que ocorre com o diretório informado aqui é que, dependendo do valor dos atributos seguintes, ele terá o mesmo comportamento do webapps do Tomcat. Ou seja, se você colocar um arquivo war dentro dele este war será descompactado e uma nova aplicação ficará acessível pelo respectivo contexto que será gerado, ou se tiver um arquivo xml dentro deste diretório então é porque este arquivo está mapeando um novo contexto (uma nova aplicação web).
  • unpackWARs: é a flag onde você indica se o gato deve descompactar ou não os arquivos war.
  • autoDeploy: é a flag onde você indica que as aplicações deste host virtual devem ser publicadas automaticamente.
    A tag <Context> representa uma aplicação web.
  • path: caminho será usado na URL para acessar a aplicação. O caminho informado aqui será utilizado após o nome do domínio. Exemplo: teste.com/enquete. Neste caso enquete é o nome do contexto.
    No caso do contexto default, ou seja, aquele que é acessado diretamente pelo nome do domínio, o atributo path deve ser vazio.
  • docBase: é o caminho do diretório base do contexto. Ou seja, é o diretório da aplicação web. Aqui pode ser informado simplesmente o caminho relativo ao appBase, ou, se preferir o caminho absoluto.

O que fizemos foi o mapeamento de um domínio (endereço de DNS, que no caso é teste.com) com uma aplicação JAVA web (que no caso é "diretorioDaAplicacaoPrincipal"). Desta forma, ao receber uma requisição para teste.com o gato vai entregar para o usuário a aplicação web que está no endereço diretorioDaAplicacaoPrincipal.

Outras aplicações podem ser instaladas no novo host virtual. Cada aplicação é um contexto (configurado ou não dentro da tag <Host>) e será acessado após o nome do domínio.

  1. Testar. Para fazer o teste de forma bem rápida, podemos dizer para o SO que o endereço teste.com é o próprio localhost. Para isto basta editar o arquivo hosts adicionado a seguinte linha no final do arquivo:

    127.0.0.1 teste.com

    No Windows o arquivo fica em [driver]:\WINDOWS\system32\drivers\etc.
    No Linux geralmente ele fica em /etc.
    Não esqueça de retirar esta configuração quando concluir o teste.

    Se tudo tiver dado certo, ao tentar acessar teste.com você será "direcionado" para aplicação informada no docBase da tag <Context>.

Mais informações em: Tomcat 4 e Tomcat 5.

Gostou da dica? Então deixe seu comentário!

  Agosto 2008  
Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Melhorias no Site

Design: Felipe Martins, Israel Freitas - Webmaster: Israel Freitas