apache反向代理连接本地gitlab失败

发布于 2021-11-25 12:06:29 字数 1884 浏览 677 评论 7

服务器ubuntu server 12.04,使用官方安装包安装了gitlab,并且按照官方文档配置/etc/gitlab/gitlab.rb,已经可以正常启动了。现在有下面的问题。

服务器的80端口已经被apache占用,并且挂有不少子站,我想将gitlab作为apache的一个子站/gitlab进行访问,于是想到了反向代理,但总是不能成功。/etc/gitlab/gitlab.rb中设置 external_url 'http://mydomain.com:8000',将gitlab中的nginx端口设置为8000端口,我想用https://mydomain.com/gitlab访问。

我的配置:

<Location /gitlab>
        ProxyPreserveHost on
        ProxyPass http://127.0.0.1:8000
        ProxyPassReverse http://127.0.0.1:8000
    </Location>



但是curl访问https://mydomain.com/gitlab的时候,那个302跳转不对:

curl -kv https://mydomain.com/gitlab
> GET /gitlab HTTP/1.1
> User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
> Host: mydomain.com
> Accept: */*
> 
< HTTP/1.1 302 Found
< Date: Fri, 29 Aug 2014 15:54:14 GMT
< Server: nginx
< Content-Type: text/html; charset=utf-8
< Status: 302 Found
< X-Frame-Options: SAMEORIGIN
< X-XSS-Protection: 1; mode=block
< X-Content-Type-Options: nosniff
< Location: http://mydomain.com/users/sign_in
< Cache-Control: no-cache
< X-Request-Id: 7bc38467-d830-4014-bd84-8200f611a37e
< X-Runtime: 0.041407
< Set-Cookie: _gitlab_session=d333f547d291fb0d24acc6e8dd7f301a; path=/; HttpOnly
< Set-Cookie: request_method=GET; path=/
< Transfer-Encoding: chunked
< 
* Connection #0 to host mydomain.com left intact
* Closing connection #0
* SSLv3, TLS alert, Client hello (1):
<html><body>You are being <a href="http://mydomian.com/users/sign_in">redirected</a>.</body></html>



响应头那个Location的地址并没有加上/gitlab,无法访问到,请问应该如何设置?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

丢了幸福的猪 2021-11-29 17:42:22

放弃了,最后还是让gitlab绑定了其他端口

北笙凉宸 2021-11-29 17:33:39

回复
想改用Apache,官网只说了把nginx设置成false。然后就没了。真是的

半世蒼涼 2021-11-29 17:31:37

请问你解决这个问题了吗。我也想要知道怎么弄

坐在坟头思考人生 2021-11-29 17:16:10

仔细看了一下文档与老外的探讨,实际是可以的,但是源码部分的注释是不推荐增加子目录。修改几个文件之后重新bundle。我按照那个文档操作,到最后的bundle无法执行,只好放弃了。最后只好把nginx的端口暴漏出去

恋你朝朝暮暮 2021-11-29 16:39:48

回复
抱歉我之前说错了,是不推荐,或者逐渐的不再提供相应的支持了,我还是建议你直接Apache转发个单独的域名到gitlab,毕竟你环境里面Apache都用了很久

凡尘雨 2021-11-29 00:09:24

回复
单台服务器,没有买域名,属于公共资源服务器,扔了多套团队系统而已。所以无法通过域名+虚拟主机的方式。只好暴漏一个端口出去,用ip+端口方式访问了。

百思不得你姐 2021-11-27 12:37:49

gitlab从某个版本开始已经取消了对子目录方式访问的支持,你得解析一个单独的域名主机名到gitlab

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文