Como posso redirecionar um número de porta no Linux?

6

Eu tenho um aplicativo do Tomcat em execução na minha máquina Linux na porta 8080 ( www.myapplication.com:8080/myapps ).

Desejo redirecionar a porta do Tomcat :8080 para a porta HTTP padrão de :80 para que o aplicativo possa ser acessado sem um número de porta ( www.myapplication.com/myapps ).

Como posso fazer isso no Linux?

    
por Wesley 15.02.2012 / 05:30

4 respostas

7

Você pode usar iptables para redirecionar a porta 80 para 8080.

Isso é útil se seu aplicativo for iniciado por um usuário não privilegiado em vez de root.

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

HTH, PEra

    
por 15.02.2012 / 15:33
2

Existem muitas maneiras de conseguir isso, mas o primeiro que vem à minha mente é usar nginx : Como redirecionar permanentemente a URL da porta 8080 para a porta 80 usando nginx

Outra é usar o link iptables :

    
por 15.02.2012 / 05:42
2

Você nunca deve enfrentar o Tomcat ou qualquer outro servidor de aplicativos Java no mundo externo. A melhor prática é instalar o Apache HTTPD e usar um proxy reverso para envolver o Tomcat ou o JBoss.

Eu recomendo fazer o seguinte.

  1. Instale o link :

    yum install httpd
  2. Criar arquivo

    /etc/httpd/conf.d/myredirect.conf
    com o seguinte conteúdo:
    ProxyPass   http://127.0.0.1:8080/myapps/
    ProxyPassReverse       http://127.0.0.1:8080/myapps/
    
  3. Se o aplicativo residir na raiz, a configuração será a seguinte:

    ProxyPass   http://127.0.0.1:8080/
    ProxyPassReverse       http://127.0.0.1:8080/
    
  4. Reinicie o link :

    service httpd restart

As instruções acima são fornecidas para o linux da família RedHat. Eles podem diferir para outros.

    
por 15.02.2012 / 16:02
1

primeiro você deve alterar o arquivo server.xml, altere "Connector port=" 8080 "" para "80". o arquivo pode estar em / etc / tomcat6, ou você pode usar "locate server.xml" para encontrá-lo.

segundo você deve alterar o arquivo de configuração padrão tomcat6, no meu sistema (squeeze debian) é / etc / default / tomcat6, adicione a linha: AUTHBIND = yes.

reinicie seu tomcat.

você pode usar www.myapplication.com/myapps para acessar seu aplicativo.

    
por 15.02.2012 / 05:45