Apache2 ProxyPass pour Rails App Gitlab
J'essaie de configurer un proxy avec apache 2, de sorte que les demandes entrantes à http://myipaddress.com aller à http://localhost:3000/
où j'ai Gitlab ( une application rails ) en cours d'exécution. Ce qui suit est ce que j'ai dans mon fichier de configuration d'Apache sur Ubuntu 10.04. Je peux accéder au gitlab page par défaut au départ, mais à toutes les demandes ultérieures effectuées par moi en cliquant sur d'autres pages après que aller à un 404 not FOUND page. Je peux entrer manuellement /gitlab/en face de l'une de ces échoué redirections et ils fonctionnent très bien. Comment puis-je faire ce travail sans avoir à réécrire /gitlab/après chaque demande de redirection après la demande initiale?
## 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>
Je comprends que je pourrais avoir le code ci-dessous , qui permettrait de résoudre mon problème. Mais je ne sais pas comment modifier le préfixe de l'gitlab rails de service. J'apprécierais vraiment de l'aide!
ProxyPass /gitlab/http://localhost:3000/gitlab/
ProxyPassReverse /gitlab/http://localhost:3000/gitlab/
Mise à JOUR:
Grâce à Friek commentaire, je suis venu très près de la solution. Ci-dessous est une partie de mon http.fichier conf. Le seul problème est que quand j'appuie sur le bouton d'accueil ou le logo sur le gitlab application, elle tente de rediriger vers gitlab/qui me donne la base index.html fichier de Apache2 en disant " ça marche!'. Comment puis-je configurer ce pour me permettre de tout simplement eu /gitlab et il me prend à la racine de la vue d'accueil de gitlab?? Merci!
## 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>
source d'informationauteur PhilBot
Vous devez vous connecter pour publier un commentaire.
Je suis tombé sur ce gist qui a fonctionné pour moi. Dans le cas où elle ne va jamais morte, je vais reposter.
licorne fichier de configuration
Modifier le fichier
/home/gitlab/gitlab/config/unicorn.rb
Trouver ligne écouter
"#{app_dir}/tmp/sockets/gitlab.socket"
et de le commenter. Décommentez la ligne d'écouter"127.0.0.1:8080"
les modules requis pour apache
/home/gitlab/gitlab/config/gitlab.conf
C'est le cas quelqu'un de nouveau arrive sur cette question.
Cela m'a aidé, de l'avis de la ProxyPassReverse lignes. Mon problème et la résolution est à https://stackoverflow.com/a/22390543/3112527 .
(à partir de https://github.com/gitlabhq/gitlab-recipes/blob/master/web-server/apache/gitlab-ssl-apache2.4.conf)
Je me suis retrouvé ici tout à Googler pour les erreurs que j'ai rencontrés lors de la configuration de Rails + licorne à l'aide d'Apache (sur le port 80) de la procuration à la licorne (sur le port 3000). Dans le cas où il est d'usage pour tout le monde, voici ma config:
Cette question me trouble un temps assez long. C'est corrigé maintenant.
La ressource la plus utile est de la Gitlab document officiel sur l'aide-un-non-groupés serveur web.
Ils fournissent également la pleine réalisable recette.
Le problème maintenant simple à
assurez-vous que la Apache2 version, utilisez
apache2 -version
Si l'utilisation de HTTPS version, vous pouvez avoir besoin pour vous assurer que votre fichier cert est déployé correctement par exemple, les fichiers sont placés compatible avec la recette de fichier spécifié.