/ 中存储网

gerrit如何配置多端口

2013-10-12 08:03:01 来源:ITJS.CN

服务器的apache上配置了redmine和gerrit,redmine使用默认端口80,gerrit按照网上配置httpd.conf,

<VirtualHost *>  

ServerName localhost  

ProxyRequests Off  

ProxyVia Off  

ProxyPreserveHost On  

<Proxy *>  

Order deny,allow  

Allow from all  

</Proxy>  

<Location /login/>  

AuthType Basic  

AuthName "Gerrit Code Review"  

AuthBasicProvider file  

AuthUserFile /home/xx/gerrt_sites/etc/passwords  

Require valid-user  

</Location>  

ProxyPass / http:  

</VirtualHost>

这样配置的结果就是通过127.0.0.1打开gerrit,但是不能打开127.0.0.1/redmine。网上说可以通过在apache中配置多站点来解决,但是偶配置了多次都不成功,改用多端口解决。

方法:

1.首先在/etc/apache2/ports.conf中添加

NameVirtualHost *:8090

Listen 8090

2.配置/etc/apache2/httpd.conf:

ServerName localhost

<VirtualHost *:8090>  

ServerName localhost

ProxyRequests Off  

ProxyVia Off  

ProxyPreserveHost On  

<Proxy *:8090>  

Order deny,allow  

Allow from all  

</Proxy>  

<Location /login/>

AuthType Basic

AuthName "Gerrit Code Review"

AuthBasicProvider file  

AuthUserFile /home/xx/gerrit_sites/etc/passwords  

Require valid-user

</Location>          ProxyPass / http://127.0.0.1:8088/

ProxyPassReverse / http://127.0.0.1:8088/

SetEnv force-proxy-request-1.0.1      SetEnv proxy-nokeepalive 1   

</VirtualHost>

3.ProxyPass / http://127.0.0.1:8088/,这里的配置必须和/home/xx/gerrt_sites/etc/gerrit.config文件里面的

[httpd]

    listenUrl = http://*:8088/ 相一致。

打开:127.0.0.1:8090,成功,127.0.0.1/redmine也可以打开。

之前一直用http://127.0.0.1:8088/来打开,结果总报错:

Check the HTTP server's authentication settings.

The HTTP server did not provide the username in the header when it forwarded the request to Gerrit Code Review.

If the HTTP server is Apache HTTPd, check the proxy configuration includes an authorization directive with the proper location, ensuring it ends with '/':

虽然可以使用了,但是感觉用多端口比较麻烦,总忘记。再看看多站点怎么配置吧!