IIS 7 + Tomcat 7 - como acessar http://localhost:8080/my_app em, por exemplo, http://my_app.local

IIS 7 + Tomcat 7 - como acessar http://localhost:8080/my_app em, por exemplo, http://my_app.local

Em resumo:

IIS7+ApacheTomcat7+ isapi_redirect.dll:

Eu tenho um aplicativo Tomcat implantado e funcionando disponível em http://localhost:8080/my_app.
Eu gostaria de ver o mesmo conteúdo em http://my_app.local(e NÃO no site padrão do Tomcat [que você pode ver abaixo]).
Eu configurei , então o conteúdo de isapi_redirect.dllagora é igual ao de, mas não é suficiente, gostaria de mapear em . (EU tenho no arquivo hosts, então já posso abrir , MAS agora ele mostra apenas o site padrão do Tomcat (o mesmo disponível em )).my_app.locallocalhost:8080localhost:8080/my_appmy_app.local127.0.0.1 my_app.localmy_app.localhttp://localhost:8080

Por favor, leia o que eu já tentei:


Mais explicado:

Eu tenhoIIS7(7.5.7600.16385) eApacheTomcat/7.0.22instalado.

  1. Implantei uma aplicação (vamos chamá-la de " my_app") no Tomcat, que agora pode ser acessada em http://localhost:8080/my_app, funciona bem. Adicionei um novo site no painel IIS com o caminho do Tomcat implantado my_app, que se parece com isto: " c:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\my_app"
  2. Vinculei o nome do host my_app.local.
  3. Depois disso, configurei isapi_redirect.dllcomoesse(ou que).
  4. Agora, quando abro http://my_app.local, posso ver o site padrão do Tomcat (veja abaixo), que é igual ao conteúdo em http://localhost:8080/!! (Esse é o problema!!!)
  5. MAS em http://my_app.localeu gostaria de ver o mesmo conteúdo que em http://localhost:8080/my_app.

Como eu posso fazer isso? Muito obrigado antecipadamente!!

meus arquivos de configuração:

insira a descrição da imagem aqui



ATUALIZAR

Eu também encontrei isso:http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html

Caso B: você precisa ocultar os componentes do caminho para todas as solicitações enviadas ao aplicativo. Aqui está a receita para o caso em que você deseja ocultar o primeiro componente do caminho /myapp. Manipulações mais complexas são deixadas como exercício para o leitor. Primeiro a solução para o caso do Apache httpd:

  1. Use mod_rewrite para adicionar /myapp a todas as solicitações antes de encaminhar para o backend: [...]
  2. Use mod_headers para reescrever quaisquer redirecionamentos HTTP que seu aplicativo possa retornar. [...]
  3. Use mod_headers novamente, para reescrever os caminhos contidos em quaisquer cookies que seu aplicativo possa definir. [...]

Se você estiver usando o Microsoft IIScomo servidor web, o plug-in ISAPI fornece uma maneira de executar a primeira etapa com um recurso integrado.Você define um arquivo de mapeamentopara mudanças simples de prefixo como esta:

# Add a context prefix to all requests ...
/=/myapp/
# ... or change some prefix ...
/oldapp/=/myapp/

e depois coloque o nome do arquivo na rewrite_rule_fileentrada do registro ou no seu isapi_redirect.propertiesarquivo. No seu uriworkermap.propertiesarquivo, você ainda precisa mapear os URLs como estão antes de reescrever! [...]
Não há suporte para as Etapas 2 (reescrever respostas de redirecionamento) ou 3 (reescrever caminhos de cookies).

Fiquei surpreso ao ver que está escrito "Não há suporte para as Etapas 2 (reescrever respostas de redirecionamento) ou 3 (reescrever caminhos de cookies).", não sei se ainda é verdade, mas e depois? Estou preso de novo?

Responder1

Dependendo do seu objetivo (url fácil de lembrar?), talvez não haja problema em apenasredirecionarmeu_app.local -> meu_app.local:8080/meu_app?

Isso não seriaescondero site de destino, no entanto.

Configure um novo site IIS em my_app.local e deixe-oredirecionarpara seu aplicativo :8080/my_app.

http://technet.microsoft.com/en-us/library/cc732930(WS.10).aspx

Responder2

Você pode tentar isso: http://blogs.iis.net/carlosag/archive/2010/04/01/setting-up-a-reverse-proxy-using-iis-url-rewrite-and-arr.aspx

Parece ser isso que você precisa, reescrita de URL e roteamento de aplicativos.

informação relacionada