o subdomínio de proxy reverso nginx está redirecionando

1

Portanto, eu tenho um servidor nginx frontend que será o proxy para vários outros servidores nginx (executando aplicativos do Passenger for Rails).

Aqui está a parte da configuração do nginx do frontend em questão:

server {
        listen 80;
        server_name git.domain.com;
        access_log /server/domain/log/nginx.access.log;
        error_log /server/domain/log/nginx_error.log debug;

        location / {
            proxy_pass http://127.0.0.1:8020/;
        proxy_redirect     off;

            proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_max_temp_file_size 0;

            client_max_body_size       10m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      90;
            proxy_send_timeout         90;
            proxy_read_timeout         90;

            proxy_buffer_size          4k;
            proxy_buffers              4 32k;
            proxy_busy_buffers_size    64k;
            proxy_temp_file_write_size 64k;
        }
}

server {
    listen 80;
    server_name domain.com;
    access_log /server/domain/log/nginx.access.log;
    error_log /server/domain/log/nginx_error.log debug;

    location / {
        proxy_pass http://127.0.0.1:8000/;
                proxy_set_header  X-Real-IP        $remote_addr;
                proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_set_header  Host             $http_host;
                proxy_redirect    off;
                proxy_set_header X_FORWARDED_PROTO https;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }
}

Finalmente, aqui está o backend para git.domain.com:

server {
        listen       8020;
        #server_name  localhost;
        root /server/gitorious/gitorious/public/;
        passenger_enabled on;

        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header  Host             $http_host;
        proxy_redirect    off;
        proxy_set_header X_FORWARDED_PROTO https;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

Então, aqui está o problema. Quando eu digito git.domain.com, minha instalação gitoriosa redireciona para domain.com. Ele funciona perfeitamente lá, mas ignora o subdomínio.

Primeiro, achei que era a construção server_name . Eu tentei git.domain.com, domain.com, localhost e atualmente nenhum. Alguma idéia?

    
por holtkampw 24.02.2011 / 07:50

1 resposta

1

Provavelmente você precisará ajustar o proxy_redirect ou alguma configuração no gitorious, você pode bisbilhotar o frontend para o tráfego de solicitação / resposta do backend para ver o redirecionamento exato que está sendo emitido?

    
por 10.03.2011 / 12:33