Temos clientes que não querem abrir a porta 3000 em seu firewall e nosso aplicativo usa essa porta para o Node.js.
Estou tentando encontrar uma maneira de redirecionar o tráfego da porta 3000 (node.js) para que possamos acessar nosso site usando apenas o nome de domínio. Também executamos o Apache na mesma caixa. Ubuntu na AWS.
Eu principalmente tenho que trabalhar agora, mas estou perdendo um pequeno pedaço do quebra-cabeça: ele agora funciona com um redirecionamento de porta 3000 para nó, mas eu acho que, ao ativar isso, eu de alguma forma tenho mexido com o tráfego regular trabalhando para a raiz do apache . (80 e 443 não mais para o apache.) Usando 3000, o nó responde como esperado em http e https.
ANTES desta alteração, testaríamos o nó dessa maneira:
app.company.net:3000/api/test (https)
e retornaria:
'{"status": 401, "message": "Token ou chave inválida"}' que é esperado
Problema atual:
Eu instalei e configurei o mod_proxy no apache e meu redirecionamento no meu arquivo httpd.conf se parece com isto:
<VirtualHost *:80>
ServerName app.company.net
ProxyPreserveHost on
ProxyPass / http://localhost:3000/
</VirtualHost>
Se eu comentar o acima, o inverso acontece. O Apache atende a todos, mas não consigo fazer o nó responder sem anexar: 3000 ao URL.
Também tentei comentar TODOS os itens acima e mexer com o mod_rewrite, mas é o próprio buraco do coelho. Nenhuma sorte depois de horas de mexer com isto. Eu continuo recebendo erros com o / api / test não existente no servidor. Isso provavelmente deveria ser outro ingresso.
O que estou fazendo de errado?
Obrigado!
-P