安装了gitlab,但只有nginx欢迎页面显示

时间:2012-12-04 00:06:39

标签: nginx gitlab

我使用installation guide安装了gitlab。一切都很好,但当我在浏览器中打开localhost:80时,我看到了消息欢迎使用nginx!。我找不到任何包含任何错误的日志文件。

我在VirtualBox中运行Ubuntu。我的/ etc / nginx / sites-enabled / gitlab配置文件读取:

# GITLAB
# Maintainer: @randx
# App Version: 3.0

upstream gitlab {
  server unix:/home/gitlab/gitlab/tmp/sockets/gitlab.socket;
}

server {
  listen 192.168.1.1:80;         # e.g., listen 192.168.1.1:80;
  server_name aridev-VirtualBox;     # e.g., server_name source.example.com;
  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, see below
    try_files $uri $uri/index.html $uri.html @gitlab;
  }

  # if a file, which is not found in the root folder is requested,
  # then the proxy pass the request to the upsteam (gitlab unicorn)
  location @gitlab {
    proxy_read_timeout 300; # https://github.com/gitlabhq/gitlabhq/issues/694
    proxy_connect_timeout 300; # https://github.com/gitlabhq/gitlabhq/issues/694
    proxy_redirect     off;

    proxy_set_header   X-Forwarded-Proto $scheme;
    proxy_set_header   Host              $http_host;
    proxy_set_header   X-Real-IP         $remote_addr;

    proxy_pass http://gitlab;
  }
}

6 个答案:

答案 0 :(得分:5)

我删除/etc/nginx/sites-enabled/default以解决该问题。

答案 1 :(得分:5)

nginx documentation说:

Server names are defined using the server_name directive and determine which server block is used for a given request. 

这意味着您必须在浏览器中输入 aridev-VirtualBox 而不是localhost。

要实现此功能,您必须在本地Hosts file中输入 aridev-VirtualBox ,并将其指向VirtualBox PC的IP。

这看起来如下:

192.168.1.1 aridev-VirtualBox

答案 2 :(得分:1)

尝试遵循orkoden的建议,从/ etc / nginx / sites-enabled /中删除默认网站,同时注释掉listen行,因为默认隐含行应该足够了。

另外,请确保在对这些配置进行更改时,关闭gitlab和nginx服务,然后按gitlab的顺序启动它们,然后是nginx。

答案 3 :(得分:1)

您的配置文件是正确的。 # /etc/nginx/sites-enabled/gitlab

也许我认为你的gitlab文件链接是错误的。

所以示例:

  

ln -s / etc / nginx / sites-available / default   的/ etc / nginx的/ / gitlab启用位点-

     

请检查默认内容==您的/ etc / nginx / sites-enabled / gitlab   含量

     

答案 4 :(得分:0)

我改变了这一行:

proxy_pass http://gitlab;

由此:

proxy_pass http://localhost:3000;

3000是我的独角兽服务器的端口。

此外,我在conf文件上做了chown root:ngnix,现在就可以了。

答案 5 :(得分:0)

Odl主题,但可能会发生以前安装的nginx。
$ gitlab-ctl reconfigure
或重新启动不会抱怨,但是之前的nginx实例可能实际运行,而不是gitlab下的实例。
这只是发生在我身上。

关闭并禁用此旧的nginx实例,然后再次执行:
$ gitlab-ctl reconfigure