Dois servidores HTTP na porta 80 e 443

1

Eu uso no meu servidor doméstico, o Apache, com um aplicativo principal que é o OwnCloud. Então, para acessá-lo da Internet eu uso URL - >

https://my_host.no-ip.org/owncloud

Eu uso outro aplicativo HTTP no mesmo servidor. Este aplicativo tem seu próprio servidor HTTP e não usa o Apache. Então, neste momento, use 8080 e 8081 como portas HTTP / HTTPS. O problema é acessar o segundo aplicativo, quando estou por exemplo no hotel (com serviço WiFi) mas atrás do servidor proxy. Esses servidores em 90% servem apenas para as portas 80 e 443 e nenhuma outra, incluindo o SOCS. Porque eu tenho apenas um endereço IP fornecido pelo meu ISP eu não posso dividir o acesso a dois endereços IP diferentes. Então minha pergunta é. Existe alguma maneira de acessar meu segundo aplicativo usando URL:

https://my_host.no-ip.org

E acesse o owncloud via URL:

https://my_host.no-ip.org/owncloud

Ambos na porta padrão 443. Neste momento, o URL de abertura é apenas o redirecionamento para outro site da Web localizado em algum lugar na Internet, desnecessário para mim.

Alguma ideia? É possível em tudo?

    
por mackowiakp 15.05.2014 / 22:11

1 resposta

2

Se você continuar a executar o segundo servidor Apache nas portas 8080 e 8081, poderá fazer o seguinte:

  1. Configure um proxy reverso usando o primeiro servidor na porta 80, que encaminhará qualquer tráfego que entrar em https://my_host.no-ip.org/owncloud .
  2. Faça um encaminhamento 301 para qualquer tráfego que entre em https://my_host.no-ip.org/owncloud to https://my_host.no-ip.org:8081/ .
  3. Faça uma reescrita de URL de https://my_host.no-ip.org/owncloud para https://my_host.no-ip.org:8081/owncloud .

Destas opções eu usaria # 1. Detalhes sobre como fazer isso estão neste artigo intitulado: Configure o Apache HTTPd como um proxy reverso (mod_proxy) .

Etapas gerais

  1. Abra o httpd.conf localizado no diretório <httpd_home>/conf .
  2. Procure as seguintes diretivas LoadModule e descomente-as removendo # no início da linha.

    LoadModule proxy_module modules/mod_proxy.so
    LoadModule proxy_http_module modules/mod_proxy_http.so
    
  3. Na parte inferior do httpd.conf, inclua as seguintes linhas para ativar o reencaminhamento.

    ProxyPass /console http://localhost:8080/console
    ProxyPass /images http://localhost:8080/images
    ProxyPassreverse / http://localhost:8080/
    
por 15.05.2014 / 22:42