Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have just installed gitlab and nginx on Ubuntu LTS 12.04 using this guide:

I installed this on another server last night and had absolutely no problems with it (sort of a test run to see how long it would take to get going). I am not getting any errors when restarting gitlab or nginx with /etc/init.d and my error logs are empty. The only thing I know of to go on is the vhost config:

    upstream gitlab {
            server unix:/home/gitlab/gitlab/tmp/sockets/gitlab.sock$

    server {
            listen localhost:80;
            root /home/gitlab/gitlab/public;

            # individual nginx logs for this gitlab vhost
            access_log /var/log/nginx/gitlab_access.log;
            error_log /var/log/nginx/gitlab_error.log;

    location / {
            # serve static files from defined root folder;.
            # @gitlab is a named location for the upstream fallback$
            try_files $uri $uri/index.html $uri.html @gitlab;

            # if a file, which is not found in the root folder is r$
            # then the proxy pass the request to the upsteam (gitla$
            location @gitlab {
            proxy_redirect off;
            # you need to change this to "https", if you set "ssl" $
            proxy_set_header X-FORWARDED_PROTO http;
            proxy_set_header Host;
            proxy_set_header X-Real-IP $remote_addr;

            proxy_pass http://gitlab;


If there's any other information that would be helpful, just let me know and I'll get it up asap.

share|improve this question

I would start by following the official gitlab documentation located here:

Also, I suspect you've cut and pasted your configuration to post your question, because the line endings above should not have '$' appended. The upstream gitlab block should look like this:

upstream gitlab {
        server unix:/home/gitlab/gitlab/tmp/sockets/gitlab.socket;
share|improve this answer
I had forgotten about this post, the problem was solved a little while ago. nginx does submit permission errors to the error log, sites-availble/enabled were not owned by www-data as they should have been. Also, the upstream socket file depends on the name of the actual file, it is not guaranteed standard across the board. – Sturm Jul 13 '12 at 18:58
I am having the same issue..Any idea how to fix. I checked the permission all looks good. I am using CentOS – chandank Jun 12 '13 at 22:30

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.