搭建gerrit服务器(apache&nginx反向代理方式)
2017-11-29 20:26
471 查看
这段时间,想搭建一个gerrit,用于代码托管,gerrit的搭建,网上有很多种教程,但是自己按照别人的教程逐步操作,一直出现诸多问题。最头痛的就是:
Configuration Error
Check the HTTP server's authentication settings.
后来经过他人指点,才知道自己的原因。由于对Apache的反向代理的机制,没有清楚,导致寸步难行。现将搭建方式进行记载:
一.gerrit的搭建
由于gerrit和Apache的安装,网上教程已经很多,这里就不一一说明了。本文主要讲解如何配置Apache的反向代理.
本次搭建环境为VMware上的Ubuntu12.04,通过Windows上,ssh去操作。 Ubuntu虚拟机的ip地址为192.168.1.6,Windows的IP地址为192.168.1.3。搭建的gerrit服务器,在Windows上通过http://192.168.1.6:9999/进行访问。
假定gerrit已经成功安装到Ubuntu,其路径为:/home/gerrit/review-gerrit
进入etc路径,即/home/gerrit/review-gerrit/etc,这里贴出gerrit.config文件:
[html] view plain copy
[gerrit]
basePath = /home/gerrit/prj-source
canonicalWebUrl = http://192.168.1.6:10000
[database]
type = h2
database = db/ReviewDB
[auth]
type = HTTP
[sendemail]
smtpServer = localhost
[container]
user = root
javaHome = /usr/lib/jvm/java-6-openjdk-amd64/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = http://*:10000
完成以上的步骤,比较简单,很多教程都有过描述。下面主要讲解Apache的反向代理。
首先简单描述一下反向代理的基础:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,
并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
例如我们想通过PC浏览器去访问http://192.168.1.6:9999,就是一个反向代理。在/home/gerrit/review-gerrit/etc/gerrit.config中,我们配置gerrit端口bind在10000,为啥外部通过访问端口9999,就可以打开gerrit的web页面?
原因就是Apache的反向代理功能。那就开始配置Apache吧!
a.第一步,要在Apache上新增端口9999,用户监听网络事件。修改配置文件/etc/apache2/ports.conf。
[html] view plain copy
NameVirtualHost *:80
Listen 80
Listen 9999
b.第二步,增加反向代理的配置。/etc/apache2/sites-enabled/000-default
[html] view plain copy
<VirtualHost *:9999>
ServerName 192.168.1.6
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
AuthType Basic
AuthName "Welcomme to Gerrit Code Review Site!"
Require valid-user
AuthUserFile /home/gerrit/review-gerrit/htpasswd.conf
</Location>
ProxyPass / http://192.168.1.6:10000/
proxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>
c.完成以上配置,则成功。然后restart Apache和gerrit服务即可
然后在pc浏览器上输入:http://192.168.1.6:9999/,则启动gerrit
输入账号密码,显示如下:
gerrit安装配置成功。
如果不适用Apache进行反向代理,使用nginx则更加简单,直接修改一个文件就可以了。/etc/nginx/conf.d/gerrit.conf,没有这个文件,则直接touch gerrit.conf就可生成,然后编辑一下。
[html] view plain copy
server {
listen *:9999;
server_name 192.168.1.6;
allow all;
deny all;
auth_basic "Welcomme to Gerrit Code Review Site!";
auth_basic_user_file /home/gerrit/review-gerrit/htpasswd.conf;
location / {
proxy_pass http://127.0.0.1:10000;
}
}
按照以上步骤,可以搭建一个gerrit服务器了。
另外,关于gerrit服务器的后台权限&项目管控,还在逐步研究。
Configuration Error
Check the HTTP server's authentication settings.
后来经过他人指点,才知道自己的原因。由于对Apache的反向代理的机制,没有清楚,导致寸步难行。现将搭建方式进行记载:
一.gerrit的搭建
由于gerrit和Apache的安装,网上教程已经很多,这里就不一一说明了。本文主要讲解如何配置Apache的反向代理.
本次搭建环境为VMware上的Ubuntu12.04,通过Windows上,ssh去操作。 Ubuntu虚拟机的ip地址为192.168.1.6,Windows的IP地址为192.168.1.3。搭建的gerrit服务器,在Windows上通过http://192.168.1.6:9999/进行访问。
假定gerrit已经成功安装到Ubuntu,其路径为:/home/gerrit/review-gerrit
进入etc路径,即/home/gerrit/review-gerrit/etc,这里贴出gerrit.config文件:
[html] view plain copy
[gerrit]
basePath = /home/gerrit/prj-source
canonicalWebUrl = http://192.168.1.6:10000
[database]
type = h2
database = db/ReviewDB
[auth]
type = HTTP
[sendemail]
smtpServer = localhost
[container]
user = root
javaHome = /usr/lib/jvm/java-6-openjdk-amd64/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = http://*:10000
完成以上的步骤,比较简单,很多教程都有过描述。下面主要讲解Apache的反向代理。
首先简单描述一下反向代理的基础:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,
并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
例如我们想通过PC浏览器去访问http://192.168.1.6:9999,就是一个反向代理。在/home/gerrit/review-gerrit/etc/gerrit.config中,我们配置gerrit端口bind在10000,为啥外部通过访问端口9999,就可以打开gerrit的web页面?
原因就是Apache的反向代理功能。那就开始配置Apache吧!
a.第一步,要在Apache上新增端口9999,用户监听网络事件。修改配置文件/etc/apache2/ports.conf。
[html] view plain copy
NameVirtualHost *:80
Listen 80
Listen 9999
b.第二步,增加反向代理的配置。/etc/apache2/sites-enabled/000-default
[html] view plain copy
<VirtualHost *:9999>
ServerName 192.168.1.6
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
AuthType Basic
AuthName "Welcomme to Gerrit Code Review Site!"
Require valid-user
AuthUserFile /home/gerrit/review-gerrit/htpasswd.conf
</Location>
ProxyPass / http://192.168.1.6:10000/
proxyPassReverse / http://127.0.0.1:10000/
</VirtualHost>
c.完成以上配置,则成功。然后restart Apache和gerrit服务即可
然后在pc浏览器上输入:http://192.168.1.6:9999/,则启动gerrit
输入账号密码,显示如下:
gerrit安装配置成功。
如果不适用Apache进行反向代理,使用nginx则更加简单,直接修改一个文件就可以了。/etc/nginx/conf.d/gerrit.conf,没有这个文件,则直接touch gerrit.conf就可生成,然后编辑一下。
[html] view plain copy
server {
listen *:9999;
server_name 192.168.1.6;
allow all;
deny all;
auth_basic "Welcomme to Gerrit Code Review Site!";
auth_basic_user_file /home/gerrit/review-gerrit/htpasswd.conf;
location / {
proxy_pass http://127.0.0.1:10000;
}
}
按照以上步骤,可以搭建一个gerrit服务器了。
另外,关于gerrit服务器的后台权限&项目管控,还在逐步研究。
相关文章推荐
- 搭建gerrit服务器(apache&nginx反向代理方式)
- Nginx0.5.33+PHP5.2.5(FastCGI)搭建胜过Apache10倍的Web服务器
- 在APACHE服务器上的访问方式上去除index.php nginx去掉index.php
- Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器
- nginx+apache+php+mysql服务器集群搭建
- (二) Apache搭建HTTP方式访问SVN服务器
- Centos6.5服务器环境搭建之安装Nginx以及Https访问方式的配置
- Nginx0.5.33+PHP5.2.5(FastCGI)搭建胜过Apache10倍的Web服务器
- redhat6.6+nginx+apache+subversion搭建svn服务器
- Nginx反向代理与负载均衡:节点服务器单/多虚拟机配置+实验环境搭建+原理解析
- Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器
- [Z] Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器
- Linux&Windows搭建基于nginx的视频点播服务器
- Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器
- 安装Apache服务器出现<OS 10013> 以一种访问不允许的方式做了一个访问套接字的尝试
- Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器
- 搭建高性能Web服务器Nginx,10倍于Apache---Nginx+Php(FastCgi模式)
- Maven仓库搭建(一):一台HTTP服务器即可(Tomcat、Apache或Nginx)
- 【搭建nginx对公司的tomcat服务器做反向代理】
- linux : gerrit搭建配置服务器+git简单操作+apache代理配置+部分遇到的错误及处理