1. Gerenciamento do sistema de configuração (aplicativo Web Admin)
A maioria dos servidores J2EE comerciais fornece uma interface de gerenciamento poderosa e a maioria usa interfaces de aplicativos Web fáceis de entender. À sua maneira, o Tomcat também fornece uma ferramenta de gerenciamento madura que não é inferior à de seus concorrentes comerciais. O aplicativo Web Admin do Tomcat apareceu pela primeira vez na versão 4.1. Suas funções naquela época incluíam gerenciamento de contexto, fonte de dados, usuário e grupo, etc. Claro, você também pode gerenciar vários gerenciamentos de banco de dados, como parâmetros de inicialização, usuário, grupo, função, etc. Nas versões subsequentes, essas funções serão bastante expandidas, mas as funções existentes já são muito úteis. O aplicativo Web Admin é definido no arquivo de implantação automática: CATALINA_BASE/webapps/admin.xml. (Nota do tradutor: CATALINA_BASE é o diretório do servidor no diretório de instalação do Tomcat)
Você deve editar este arquivo para garantir que o parâmetro docBase em Contexto seja um caminho absoluto. Em outras palavras, o caminho CATALINA
_BASE/webapps/admin.xml é um caminho absoluto. Como outra opção, você também pode excluir esse arquivo de implementação automática e criar um contexto de aplicativo Web Admin no arquivo server.xml. O efeito é o mesmo. Você não pode gerenciar o aplicativo Web Admin. Em outras palavras, talvez você não consiga fazer nada, exceto excluir CATALINA_BASE/webapps/admin.xml.
Se você usar UserDatabaseRealm (padrão), precisará adicionar um usuário e uma função ao arquivo CATALINA_BASE/conf/tomcat-users.xml. Você edita esse arquivo e adiciona uma função chamada "admin" ao arquivo, como segue:
<role name="admin"/>
Também precisa haver um usuário, e a função desse usuário é "admin". Adicione um usuário como um usuário existente (altere a senha para torná-la mais segura):
<ser name="admin"
senha = "deep_dark_secret"
funções="admin"/>
Depois de concluir essas etapas, reinicie o Tomcat e visite http://localhost:8080/admin . Você verá uma interface de login. O Admin Web Application adota um mecanismo de segurança baseado no gerenciamento de contêineres e adota a estrutura Jakarta Struts. Depois de fazer login na interface de gerenciamento como um usuário com a função "admin", você poderá configurar o Tomcat usando esta interface de gerenciamento.
2. Configurar o gerenciamento de aplicativos (Manager Web Application)
O Manager Web Application permite que você execute algumas tarefas simples do aplicativo Web por meio de uma interface de usuário mais simples que a do Admin Web Application. A Aplicação Web Manager é definida em um arquivo de implantação automática:
?CATALINA_BASE/webapps/manager.xml
Você deve editar este arquivo para garantir que o parâmetro docBase do contexto seja um caminho absoluto, ou seja, o caminho absoluto de CATALINA_HOME/server/ webapps/manager . (Nota do tradutor: CATALINA_HOME é o diretório de instalação do Tomcat)
Se você estiver usando UserDatabaseRealm, será necessário adicionar uma função e um usuário ao arquivo CATALINA_BASE/conf/tomcat-users.xml. Em seguida, edite o arquivo e adicione uma função chamada "gerente" ao arquivo:
<role name="manager">
Também requer um usuário com a função "gerente". Adicione um novo usuário como um usuário existente (altere a senha para torná-la mais segura):
<user name="manager"
senha = "deep_dark_secret"
Roles="manager"/>
Em seguida, reinicie o Tomcat, visite http://localhost/manager/list , você verá uma interface de gerenciamento de texto muito simples, ou visite http://localhost/manager/html/list, você verá Veja uma interface de gerenciamento HTML. De qualquer forma, significa que seu aplicativo Web Manager foi iniciado.
O aplicativo Manager permite instalar novos aplicativos da web para teste sem privilégios de administração do sistema. Se tivermos uma nova aplicação web localizada em /home/user/hello e quisermos instalá-la em /hello, para testar a aplicação, podemos fazer isso e inserir "/hello" na primeira caixa de arquivo (como o caminho ao acessar), digite "file:/home/user/hello" (como URL de configuração) na segunda caixa de texto.
O aplicativo Manager também permite parar, reiniciar, remover e reimplantar um aplicativo da web. Pare um aplicativo para que ele não possa ser acessado. Quando um usuário tentar acessar o aplicativo interrompido, ele verá um erro 503 - "503 - Este aplicativo não está disponível no momento".
Remover um aplicativo da web significa simplesmente excluir o aplicativo da cópia em execução do Tomcat. Se você reiniciar o Tomcat, o aplicativo excluído reaparecerá (ou seja, a remoção não significa excluí-lo do disco rígido). ?
3. Implantar um aplicativo da web
Existem duas maneiras de implantar serviços da web no sistema.
1. Copie seu arquivo WAR ou a pasta do seu aplicativo web (incluindo todo o conteúdo da web) para o diretório $CATALINA_BASE/webapps.
2. Crie um arquivo de fragmento XML para seu serviço da web que inclua apenas conteúdo de contexto e coloque o arquivo no diretório $CATALINA_BASE/webapps. O próprio aplicativo da web pode ser armazenado em qualquer lugar do disco rígido.
Se você possui um arquivo WAR e deseja implantá-lo, basta simplesmente copiar o arquivo para o diretório CATALINA_BASE/webapps. O arquivo deve ter ".war" como extensão. Depois que o Tomcat escutar esse arquivo, ele (por padrão) descompactará o arquivo como um subdiretório e nomeará o subdiretório com o nome do arquivo WAR.
A seguir, o Tomcat criará um contexto na memória, assim como você o criou no arquivo server.xml. Obviamente, outros conteúdos necessários serão obtidos do DefaultContext em server.xml.
Outra maneira de implantar um aplicativo da web é gravar um arquivo de snippet XML de contexto e, em seguida, copiar o arquivo para o diretório CATALINA_BASE/webapps. Um fragmento de contexto não é um arquivo XML completo, mas apenas um elemento de contexto e uma descrição correspondente do aplicativo.
Esse tipo de arquivo de fragmento é como o elemento de contexto recortado de server.xml, portanto, esse tipo de fragmento é denominado "fragmento de contexto".
Por exemplo, se quisermos implantar um aplicativo chamado MyWebApp.war que usa realm como método de controle de acesso, podemos usar o seguinte fragmento:
<!--
Fragmento de contexto para implantação de MyWebApp.war
-->
<Caminho do contexto="/demo"
docBase="webapps/MyWebApp.war"
debug="0" privilegiado="true">
<Reino className=
"org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Context>
Nomeie o fragmento como "MyWebApp.xml" e copie-o para o diretório CATALINA_BASE/webapps.
Este fragmento de contexto fornece uma maneira conveniente de implementar aplicativos da web. Não é necessário editar o server.xml A menos que você queira alterar as características de implementação padrão, não há necessidade de reiniciar o Tomcat ao instalar um novo aplicativo da web.
4. Configure hosts virtuais (Virtual Hosts)
Em relação ao elemento "Host" em server.xml, você só precisa modificá-lo ao configurar um host virtual. A hospedagem virtual é um mecanismo para servir vários nomes de domínio em um servidor web. Para cada nome de domínio, parece que todo o host é exclusivo. Na verdade, a maioria dos sites de pequenas empresas são implementados usando hosts virtuais. Isso ocorre principalmente porque o host virtual pode se conectar diretamente à Internet e fornecer largura de banda correspondente para garantir uma velocidade de resposta de acesso razoável. IP.
Um host virtual baseado em nome pode ser estabelecido em qualquer servidor web criando um alias do endereço IP no servidor de nomes de domínio (DNS) e informando ao servidor web para distribuir solicitações de diferentes nomes de domínio para o diretório web correspondente. Como este artigo é principalmente sobre o Tomcat, não apresentaremos o método de configuração do DNS em vários sistemas operacionais. Se precisar de ajuda nesse sentido, consulte o livro "DNS and Bind", escrito por Paul Albitz e Cricket. Liu (O'Reilly). Para fins de demonstração, usarei um arquivo hosts estático, pois é a maneira mais fácil de testar aliases.
Para usar hosts virtuais no Tomcat, você precisa configurar o DNS ou os dados do host. Para testar, basta definir um alias de IP para o IP local. Em seguida, você precisa adicionar algumas linhas ao server.xml, como segue:
<Server port="8005".
shutdown="SHUTDOWN" debug="0">
<Nome do serviço="Tomcat-Standalone">
<Nomedaclasse do conector=
"org.apache.coyote.tomcat4.CoyoteConnector"
porta = "8080"
minProcessors="5" maxProcessors="75"
enableLookups = "verdadeiro"
redirecionarPort="8443"/>
<Nomedaclasse do conector=
"org.apache.coyote.tomcat4.CoyoteConnector"
porta = "8443" minProcessors = "5"
maxProcessadores = "75"
aceitarCount="10" depurar="0"
esquema="https" seguro="true"/>
<Factory className="org.apache.coyote.
tomcat4.CoyoteServerSocketFactory"
clientAuth="false" protocolo="TLS" />
</Conector>
<Nome do mecanismo="Autônomo"
defaultHost="localhost" debug="0">
<!-- Este Host é o Host padrão -->
<Nome do host="localhost"
debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="ROOT" debug="0"/>
<Caminho do contexto="/pedidos"
docBase="/home/ian/orders" debug="0"
reloadable="true" crossContext="true">
</Contexto>
</Host>
<!-- Este Host é o primeiro
"Host Virtual": http://www.example.com/ -->
<Nome do host=" www.example.com "
appBase="/home/exemplo/webapp">
<Caminho do contexto="" docBase="."/>
</Host>
</Engine>
</Serviço>
</Server>
O arquivo server.xml do Tomcat, em seu estado inicial, inclui apenas um host virtual, mas pode ser facilmente expandido para suportar vários hosts virtuais. O exemplo anterior mostra uma versão simples de server.xml, na qual a parte em negrito é usada para adicionar um host virtual. Cada elemento Host deve incluir um ou mais elementos de contexto e um dos elementos de contexto incluídos deve ser o contexto padrão. O caminho de exibição deste contexto padrão deve estar vazio (por exemplo, path="").