Gitlab 5.3背后是nginx反向代理

时间:2013-07-08 14:21:16

标签: nginx reverse-proxy gitlab

我有一个成功的Gitlab 5.3安装,一切运行良好。我想在我设法做的nginx反向代理后面运行服务器,但是缺少所有资产:

Gitlab front page

我在/ git上运行Gitlab,这是我的反向代理服务器上的nginx配置:

server {
    listen      80 default;
    listen      [::]:80 ipv6only=on default;

    server_name     reverseproxy;
    ## redirect http to https
    rewrite     ^ https://$server_name$request_uri? permanent;

}

server {
    access_log  /var/log/nginx/ssl_access.log;
    error_log   /var/log/nginx/ssl_error.log;
    index index.html index.htm index.php;

    ## start ssl config
    listen 443; 
    server_name reverseproxy;


    ## ssl server specifics 
    ssl on;
    ssl_certificate     /root/reverseproxy/reverseproxy.crt;
    ssl_certificate_key     /root/reverseproxy/reverseproxy.key;

    ssl_session_cache   shared:SSK:10m;
    ssl_session_timeout     10m;

    ssl_protocols SSLv3 TLSv1;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;

    location /git {
        proxy_pass      http://gitlabserver/git;

        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_set_header X-Forwarded-Proto  $scheme;
    }       
}

我查看了nginx访问和错误日​​志,但没有任何线索。任何提示都非常赞赏。

1 个答案:

答案 0 :(得分:1)

假设git守护程序和nginx守护程序位于同一个框中,我认为位置块应如下所示:

location ^~ /git/ {
    proxy_pass                          http://127.0.0.1/git;
    proxy_redirect                      http://127.0.0.1/git/  /git;
    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_set_header X-Forwarded-Proto  $scheme;
}