Usando o Nginx reescrito para alterar o URL mostrado de um IP?

0

Não consigo encontrar nenhuma informação sobre isso, então não sei se é possível, mas eu queria saber: Posso usar o módulo de reescrita do NGINX para alterar o URL exibido, por exemplo, 123.123.123.123:6000/some / caminho para algo como my.domain.com/some/path?

Do jeito que está agora, eu tenho um subdomínio registrado para este servidor, onde domainFactory apenas tem um redirecionamento para esse servidor.

Talvez eu deva abordar isso de forma diferente?

    
por Nico Weiss 11.02.2016 / 09:41

1 resposta

0

Eu vejo duas maneiras possíveis de interpretar sua pergunta:

1) Você poderia significar um redirecionamento em vez de uma "reescrita" (um termo do servidor web). Você quer mostrar o domínio, não o IP para o cliente. Isso é um redirecionamento.

server {
    listen 123.123.123.123:6000;

    return 301 https://my.domain.com$request_uri;
}

2) Você pode querer dizer que o tráfego de lá vai para um servidor de back-end específico. Mais uma vez, não acho que você queira reescrever.

server {
    listen 123.123.123.123:6000;

    location / {
        proxy_pass http://my.domain.com;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }
}

Para ser mais completo, talvez você já tenha conteúdo para / e deseje apenas que um / caminho seja exibido pelo outro servidor:

server {
    listen 123.123.123.123:6000;

    location ~ /some/path {
        proxy_pass http://my.domain.com;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }

    location / {
        proxy_pass http://123.123.123.123:80;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }
}

Este último é uma técnica comum para expor vários sistemas de micro-serviços como um, unificando assim o domínio e simplificando o SSL. No meu caso, costumo mapear qualquer coisa com _ para o meu cluster do Elasticsearch.

    
por 11.02.2016 / 18:55