Приложение Apache2 ProxyPass для Rails Gitlab
Я пытаюсь настроить прокси с Apache2, чтобы входящие запросыhttp://myipaddress.com идти кhttp://localhost:3000/
где у меня работает Gitlab (приложение для рельсов). Вот что я имею в своем конфигурационном файле Apache на Ubuntu 10.04. Сначала я могу успешно получить доступ к странице по умолчанию для gitlab, но любые последующие запросы, которые я выполняю, нажимая на другие страницы, затем переходят на страницу 404 НЕ НАЙДЕНА. Я могу вручную ввести / gitlab / перед любым из этих неудачных перенаправлений, и они работают просто отлично. Как я могу сделать это без необходимости переписывать / gitlab / после каждого запроса на перенаправление после первоначального запроса?
## Setup a proxy which listens on the port that gitlabh does ( from start_server.sh )
ProxyRequests Off
ProxyPass /gitlab/ http://localhost:3000/
ProxyPassReverse /gitlab/ http://localhost:3000/
#DocumentRoot /home/gitlabhq/gitlabhq/public
<Proxy http://localhost:3000/>
Order deny,allow
Allow from all
</Proxy>
Я понимаю, что у меня мог бы быть код ниже, который решил бы мою проблему. Но я не знаю, как изменить префикс службы рельсов gitlab. Я действительно ценю некоторую помощь!
ProxyPass /gitlab/ http://localhost:3000/gitlab/
ProxyPassReverse /gitlab/ http://localhost:3000/gitlab/
ОБНОВИТЬ:
Благодаря комментарию Фрика я очень близко подошел к решению этой проблемы. Ниже приведена часть моего файла http.conf. Единственная проблема заключается в том, что, когда я нажимаю кнопку «Домой» или логотип в приложении gitlab, оно пытается перенаправить на gitlab /, что дает мне основной файл index.html из Apache2, говорящий «он работает!». Как я могу настроить это так, чтобы я мог просто получить / gitlab, и он перенесет меня в корневой каталог gitlab? Спасибо!
## For Gitlab using Apache2 Passenger
## Install on Ubuntu by:
## sudo gem install passenger && sudo passenger-install-apache2-module
## but only after running the install_and_configure_git.py script
## and creating a soft link to the rails gitlab /public directory like so:
## sudo ln -s /home/gitlabhq/gitlabhq/public /var/www/gitlab
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.13/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.13
PassengerRuby /usr/local/bin/ruby
<VirtualHost *:80>
ServerName gitlab
## Set the overall Document Root
DocumentRoot /var/www
<Directory /var/www>
Allow from all
</Directory>
## Set the Rails Base URI
RackBaseURI /gitlab
RailsBaseURI /gitlab
<Directory /var/www/gitlab>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>