apache反向代理连接本地gitlab失败
服务器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 -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>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
放弃了,最后还是让gitlab绑定了其他端口
回复
想改用Apache,官网只说了把nginx设置成false。然后就没了。真是的
请问你解决这个问题了吗。我也想要知道怎么弄
仔细看了一下文档与老外的探讨,实际是可以的,但是源码部分的注释是不推荐增加子目录。修改几个文件之后重新bundle。我按照那个文档操作,到最后的bundle无法执行,只好放弃了。最后只好把nginx的端口暴漏出去
回复
抱歉我之前说错了,是不推荐,或者逐渐的不再提供相应的支持了,我还是建议你直接Apache转发个单独的域名到gitlab,毕竟你环境里面Apache都用了很久
回复
单台服务器,没有买域名,属于公共资源服务器,扔了多套团队系统而已。所以无法通过域名+虚拟主机的方式。只好暴漏一个端口出去,用ip+端口方式访问了。
gitlab从某个版本开始已经取消了对子目录方式访问的支持,你得解析一个单独的域名主机名到gitlab