更改默认的Gitlab端口

时间:2016-07-24 09:02:18

标签: gitlab

我已经通过Omnibus软件包在CentOS 7(全新安装)上安装了最新的Gitlab-CE(8.10),如下所述:https://about.gitlab.com/downloads/#centos7

现在,我想更改可以访问Gitlab Web界面的默认端口。为此,我按照http://docs.gitlab.com/omnibus/settings/nginx.html#change-the-default-port-and-the-ssl-certificate-locations的说明进行操作,即我包括

external_url "http://127.0.0.1:8765"

在配置文件/etc/gitlab/gitlab.rb中,然后使用gitlab-ctl reconfigure && gitlab-ctl restart更新配置。

但是,当我导航到http://127.0.0.1:8765时,Gitlab会重定向到http://127.0.0.1/users/sign_in,即端口规范以某种方式被丢弃。然后,当我手动将浏览器中的URL更改为http://127.0.0.1:8765/users/sign_in时,它会正确显示登录页面,有趣的是,页面上的所有链接(例如,"探索","帮助&#34 ;)包含端口规范。

为了解决此问题,是否有必要在/etc/gitlab/gitlab.rb以外的其他位置指定端口?

3 个答案:

答案 0 :(得分:8)

问题在这里:https://gitlab.com/gitlab-org/gitlab-ce/issues/20131 解决方法: 将此行添加到/etc/gitlab/gitlab.rb:

nginx['proxy_set_headers'] = { "X-Forward-Port" => "8080", "Host" => "<hostname>:8080" }

将port和hostname替换为您的值,然后将其替换为root或sudo:

gitlab-ctl reconfigure
gitlab-ctl restart

它帮助我使用gitlab repo的Debian 8.5,gitlab-ce。

答案 1 :(得分:1)

除了external_url之外,文档建议设置几个NGiNX代理头:

  

默认情况下,当您指定external_url时,omnibus-gitlab将设置一些NGINX代理标头,这些标头在大多数环境中都被认为是理智的。

     

例如,omnibus-gitlab将设置:

"X-Forwarded-Proto" => "https",
"X-Forwarded-Ssl" => "on"
  

(如果您在external_url中指定了https架构。)

     

但是,如果您的GitLab处于更复杂的设置,例如在反向代理后面,则需要调整代理标头以避免错误,例如您想要的更改被拒绝或无法验证CSRF令牌真实性已完成422无法处理。

     

这可以通过覆盖默认标头来实现,例如。在/etc/gitlab/gitlab.rb中指定:

 nginx['proxy_set_headers'] = {
  "X-Forwarded-Proto" => "http",
  "CUSTOM_HEADER" => "VALUE"
 }
  

保存文件并reconfigure GitLab以使更改生效。

     

这样您就可以指定NGINX支持的任何标题。

OP ewcz确认in the comments

  

我刚刚在nginx['proxy_set_headers']中取消注释了/etc/gitlab/gitlab.rb的默认设置(同时,将X-Forwarded-Proto更改为http并删除了X-Forwarded-Ssl),然后突然就可以了!

答案 2 :(得分:0)

我按照上面的评论改变了etc / gitlab.rb,而我的端口没有改变

external_url http://localhost:13080/
...
 nginx['proxy_set_headers'] = {
  "X-Real-IP" => "$remote_addr",
  "X-Forwarded-For" => "$proxy_add_x_forwarded_for",
  "X-Forwarded-Proto" => "https",
  "X-Forwarded-Ssl" => "on",
  "X-Forward-Port" => "13080",
  "Host" => "localhost:13080"
}

gitlab-ctl reconfigure
gitlab-ctl restart