
Já tentei sugestões mencionadas em:
Ocultar porta no redirecionamento de proxy reverso Nginx
mas isso não me ajuda.
Eu fiz o proxy reverso nginx para meu aplicativo Django + Gunicorn e ele está aberto na porta 8000. Posso acessar o nome de uma máquina comohttp://alguma_máquina:8000para ver meu aplicativo em execução. Mapeei o host local em execução naquela máquina com o nome da máquina usando o proxy reverso Nginx. Quero ocultar a porta e no URL gostaria de algo comohttp://some_machine/zmkem vez dehttp://alguma_máquina:8000/zmk.
Estou escrevendo o conteúdo abaixo em minha /etc/nginx/conf.d
pasta:
upstream zms {
ip_hash;
server zms:8000;
}
# portal
server {
location /zmk {
proxy_pass http://zms/;
# proxy_redirect http://some-machine:8000/ http://some-machine/zmk;
port_in_redirect off;
# autoindex on;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 8000;
server_name localhost
server_name_in_redirect off;
}
Não estou entendendo o que estou fazendo de errado? Também tentei copiar o conteúdo acima para /etc/nginx/site-available
a pasta.
Responder1
Mude sua listen
declaração para listen 80
em vez disso. Dessa forma, seu servidor nginx escutará na porta 80 e fará proxy do tráfego para a porta 8000.