Porta ausente após proxy reverso Nginx

A causa do incidente foi o problema de acesso à porta de mapeamento externo do GitLab interno da empresa. Usar a porta 80/443 na rede interna para acessar normalmente, usar uma porta diferente de 80 para acessar a página inicial saltará automaticamente para a porta 80. Manual o acesso à porta é normal, mas isso afeta extremamente a experiência do usuário.

1. Descrição do histórico

A intranet usa um container para construir uma GitLabplataforma, a Nginxporta interna é 8081, e IP+Porto acesso é normal pelo formulário, e então o link reverso é implantado em outras máquinas Nginx, e o nome de domínio também é usado para acessar normalmente, mas a porta do link reverso for alterado para porta não 80/443, ao acessar a página inicial através do formato de nome de domínio e porta, saltará para a porta 80, resultando em falha de acesso, conforme mostrado abaixo:

http://git.example.com:1443 — > http://git.example.com

Após adicionar manualmente a porta ao endereço URL redirecionado, o acesso volta ao normal, portanto, suspeita-se que possa haver um Nginxproblema de configuração.

2. Resolução de problemas

1. A causa do problema

NginxDevido à perda da porta, Nginxas informações da porta não foram transmitidas corretamente ao backend e a configuração não estava corretaNginx

2. Resolução de problemas

server {
    
    
    listen 8888;
    server_name localhost;
    location / {
    
    
        proxy_set_header Host $host:$server_port; 这一行是关键
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

proxy_set_header Host $host:$server_port;Esta linha é a chave, deve ser configurada para obter a porta real.

Acho que você gosta

Origin blog.csdn.net/qq_25854057/article/details/124706772
Recomendado
Clasificación