Redirecionando o tráfego HTTP de um servidor local na web

Redirecionando o tráfego HTTP de um servidor local na web

Eu tenho um servidor web (vamos chamá-lo de C1) que está executando um servidor Apache/PHP e é encaminhado por porta para que eu possa acessá-lo em qualquer lugar. No entanto, há outro computador na LAN do servidor web que também possui um servidor Apache (vamos chamá-lo de C2). Não consigo alterar o encaminhamento de porta nem o servidor Apache (também conhecido como instalar módulos personalizados).

Existe uma maneira de acessar C2 dentro de um diretório de C1? (por exemplo, acessar www.website.org/random_dir me permitirá navegar na raiz do servidor Apache C2.)

Estou tentando alterar o mínimo possível da configuração/outro (por exemplo, ativando módulos etc.)

Existe uma solução possível?

Responder1

Você pode colocar um script em C1 que encaminha suas solicitações para C2 e apresenta suas respostas. Isso pode ser conseguido usando proxies da web.

Tente instalarKnProxyouproxy phpcomo primeiro passo e veja se um deles atende às suas necessidades.

Utilizando o proxy, lembre-se de chamar C2 pelo seu ip interno (que é visível para C1).

Responder2

Você pode colocar um script na pasta C1 que usa curl para obter as informações de C2. Ao nomeá-lo index.php ao visitar www.website.org/random_dir você obterá seu comportamento.

No entanto, para acessar outros arquivos ou pastas você teria que passá-los como variáveis ​​como: www.website.org/random_dir?folder=another_folder/subfolder&file=my_file

Essa solução atenderia às suas necessidades?

Responder3

Proxy reverso é o nome do que você está tentando fazer. Apache suporta isso.

O proxy reverso é onde um servidor da web encaminha uma solicitação HTTP ou URL para um segundo servidor da web (possivelmente modificando-o no caminho), coleta a resposta desse segundo servidor da web e entrega o resultado (possivelmente modificando o resultado no caminho de volta).

Esseé um bom lugar para começar. Atualizarei esta resposta com alguns exemplos quando/se tiver tempo.

Vou avisá-lo sobre isso: o proxy reverso funciona excelentemente para conteúdo estático e conteúdo onde a URL da página não está "codificada" em nenhum link de conteúdo dinâmico ou gerado por Javascript. Quando você tem um aplicativo da web ou um aplicativo com seu próprio servidor da web integrado (pense no acesso remoto do Subsonic ou do uTorrent), às vezes você pode estar em uma situação em que os links que o aplicativo da web gera apontam para um local diferente daquele que você está proxy reverso para. É aqui que os módulos de reescrita entram em ação e pode ficar confuso. Nem todos os aplicativos da web podem ter proxy reverso com êxito.

informação relacionada