lockdoc
Well-Known Member
Hi,
Ich wuerde gerne anstelle von ssh das http Protokoll benutzen um ein remote git repository auszuchecken. Dazu habe ich nach einer Anleitung den vHost von Apache eingerichtet
Das Problem ist jetzt aber, dass dies ueber die Location definiert wird und dementsprechend auf alle vHosts zu trifft. Und ich kann via shell auf alle moeglichen domains drauf zugreifen
Ich haette den Zugriff aber gerne nur ueber den definierten ServerName beschraenkt.
Also nur dass es so funktioniert:
Kann ich das irgendwie bewerkstelligen?
Ich wuerde gerne anstelle von ssh das http Protokoll benutzen um ein remote git repository auszuchecken. Dazu habe ich nach einer Anleitung den vHost von Apache eingerichtet
Code:
<VirtualHost *:80>
ServerName git.devel.mydomain.de
ServerAdmin lockdoc@mydomain.de
# ------------- Log Defines
ErrorLog /var/log/apache/git.devel.mydomain.de-error_log
CustomLog /var/log/apache/git.devel.mydomain.de-access_log combined
# ------------- Git Environment Variables
SetEnv GIT_PROJECT_ROOT /var/git/base
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /usr/local/libexec/git-core/git-http-backend/
<Location /git>
### authentification required for external users
AuthUserFile /usr/local/etc/apache22/auth-passwd
AuthType Basic
AuthName "Private Git Access"
Require valid-user
Order allow,deny
# Allow all from LAN, but require a password from outside
Allow from 192.168.0.0/24
Satisfy any
</Location>
</VirtualHost>
Das Problem ist jetzt aber, dass dies ueber die Location definiert wird und dementsprechend auf alle vHosts zu trifft. Und ich kann via shell auf alle moeglichen domains drauf zugreifen
Code:
git clone mydomain.de/git/<projectname>
git clone a.mydomain.de/git/<projectname>
git clone b.mydomain.de/git/<projectname>
...
Ich haette den Zugriff aber gerne nur ueber den definierten ServerName beschraenkt.
Also nur dass es so funktioniert:
Code:
git clone git.devel.mydomain.de/git/<projectname>
Kann ich das irgendwie bewerkstelligen?