Encaminhando apenas em uma única porta 8080 para localhost (Windows) possível? [fechado

StackOverflow https://stackoverflow.com/questions/332651

  •  22-07-2019
  •  | 
  •  

Pergunta

Eu sei como configurar um servidor da web local usando o XAMPP no Windows ... Eu insiro meu alias e meta no arquivo hosts (C: Windows System32 Drivers etc hosts) e, em seguida, adicione uma entrada respectiva no meu Apache VHOSTS arquivo de configuração. Dessa forma, assumindo que meu servidor da web está ouvindo a porta 80, posso, por exemplo, mapa example.com Para o meu servidor da web local.

Eu sempre digitei todo o nome de domínio (ou seja, exemplo.com) no meu arquivo hosts e quaisquer solicitações nesse nome seriam direcionadas ao localhost.

Agora eu estava me perguntando se há uma maneira de Somente a Forward exemplo.com em uma determinada porta (por exemplo, apenas exemplo.com:8080) para o servidor da web local e deixe o exemplo.com (na porta padrão 80) sozinha, para que ainda fosse para o meu site de produção ao vivo.

Até onde eu entendo, isso pode não ser possível usando apenas o arquivo hosts (tentei adicionar a porta: 8080 aos meus nomes de domínio - não parecia trabalho ;-)) ...

Eu realmente não sei muito sobre esse tópico, então quaisquer idéias, idéias, links, material de leitura e ferramentas são bem -vindas.

Editar: a resposta de Arnout responde à pergunta que fiz acima, mas não resolve meu problema real. Remopeamento exemplo.com:8080 Para localhost: 80 funciona e se eu acessar o exemplo.com, ele carrega a página frontal da minha versão local, mas todos os links nessa página, é claro, não sabem sobre o número da porta e, portanto, apontam para o versão de produção ... a solução real para o meu problema parece ser morder a maçã azeda e fixar Minha aplicação (seguindo a sugestão de Rob) e remova todos os URLs codificados, para que funcione em qualquer domínio ...

Foi útil?

Solução

Junkbuster da Internet (um servidor proxy) pode fazer isso usando seu encaminhamento funcionalidade.

Basta adicionar uma linha como

example.com:8080   localhost:80   .   .

para sforward.ini, e descomamento o forwardfile linha dentro junkbstr.ini. Agora configure seu navegador para usar um proxyServer em execução na porta 8000 do localhost, e você está definido.

Tenho certeza de que outros servidores proxy têm um recurso semelhante - eu gosto do Junkbuster, pois é um executável independente simples.

Outras dicas

Você está tocando na área de Serviços de Nome de Domínio (DNS). Tecnicamente, com uma configuração DNS avançada (que pode incluir portas de remapeamento), o que você propõe é possível e é feito rotineiramente na Internet. No entanto, é improvável que você queira ir a tantos problemas e despesas localmente.

Por outro lado, suspeito que seu problema real possa ser abordado com mais facilidade. Por que você gostaria de ter resolução de "exemplo.com" para o servidor da web local? Você já pode fazer referência ao seu servidor da web local como "localhost", como "127.0.0.1" e através do nome da máquina atribuído "WorkStation-X".

A única razão pela qual eu consigo pensar e que eu vi, por querer fazer referência ao seu servidor da web local com o mesmo nome do host que o servidor da Web de produção, deve-se ao codificar o nome do host do servidor em seus links na Web do seu aplicativo Páginas. Se for esse o caso aqui, a resposta é simples: não! Você sempre deve implementar seus aplicativos da Web para que eles referenciem tudo (outras páginas, CSS, JS, Imagens, etc.) em relação ao servidor implantado. Se você implantar em vários servidores, suas referências devem ser absolutas com base em nomes de hosts de servidores configuráveis. Isso é fácil de fazer, e não há razão para não fazê -lo.

Se não for esse o caso, explique o que você está tentando alcançar e o que o motiva a tentar.

EDIT: Como você confirmou meu palpite de que o problema é referências codificadas ao nome do host de produção nas páginas da web, deixe-me simplesmente acrescentar que sempre, sem exceção, descobri que é mais barato corrigir o problema real do que de acumular soluções alternativas (como sua tentativa de remapear as portas). Eu nunca encontrei um autor que argumentou o contrário.

A fixação das páginas deve ser um pouco mais difícil do que uma pesquisa e substituição global, especialmente com um editor de texto decente. Mesmo escrever um script simples para alterar os arquivos de origem seria muito mais barato e mais fácil do que suas tentativas de solução alternativa.

Independentemente disso, os melhores votos para você, e deixe -nos saber como acabou.

Você pode confirmar se a porta 8080 está ouvindo no websorver? Use o comando "netstat -na" para ver se a porta 8080 está ouvindo.

Você adicionou 8080 porta no arquivo de configuração do Apache da mesma forma que a porta 80 padrão?

Depois de adicionar a porta 8080 no arquivo de configuração do Apache para fazer com que ele ouça e verifique se a porta 8080 está ouvindo no websorver, você poderá acessar a página usando a porta 8080. Como http: // mytestwebserver: 8080/index.html ou algo parecido com isto....

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top