Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:git_centos_7_-_gitweb

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
tachtler:git_centos_7_-_gitweb [2015/08/07 13:38] klaustachtler:git_centos_7_-_gitweb [2015/08/07 15:14] – [Aufruf der Web-Anwendung] klaus
Zeile 980: Zeile 980:
         </Directory>         </Directory>
  
-        ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/+        ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/ 
 +        ScriptAliasMatch "(?x)^/git/(.*/(HEAD | \ 
 +                                info/refs | \ 
 +                                objects/(info/[^/]+ | \ 
 +                                [0-9a-f]{2}/[0-9a-f]{38} | \ 
 +                                pack/pack-[0-9a-f]{40}\.(pack|idx)) | \ 
 +                                git-(upload|receive)-pack))$"
 +                                /usr/libexec/git-core/git-http-backend/$1
  
         SetEnv GIT_PROJECT_ROOT /srv/git         SetEnv GIT_PROJECT_ROOT /srv/git
         SetEnv GIT_HTTP_EXPORT_ALL         SetEnv GIT_HTTP_EXPORT_ALL
  
-        DocumentRoot "/srv/git"+        DocumentRoot "/var/www/git" 
 +        <Directory "/var/www/git"> 
 +                AddHandler perl-script .cgi 
 +                Options -Indexes +FollowSymLinks +ExecCGI 
 +                AllowOverride None 
 +                # LDAP 
 +                AuthType Basic 
 +                AuthName "GitWeb Repository Bare Remote Server (git.tachtler.net)" 
 +                AuthBasicProvider ldap 
 +                AuthLDAPURL "ldaps://ldap.tachtler.net:636/dc=tachtler,dc=net?uid" 
 +                AuthLDAPBindDN "cn=Ersatzbenutzer,dc=tachtler,dc=net" 
 +                AuthLDAPBindPassword "geheim" 
 +                <RequireAll> 
 +                        # (enable for LDAP access) 
 +                        Require ldap-user klaus 
 +               </RequireAll> 
 +                PerlResponseHandler ModPerl::Registry 
 +                PerlOptions +ParseHeaders 
 +                SetEnv  GITWEB_CONFIG  /etc/gitweb.conf 
 +        </Directory> 
 +         
 +        # DocumentRoot "/srv/git"        
         <Directory "/srv/git">         <Directory "/srv/git">
                 Options -Indexes +FollowSymLinks +ExecCGI                 Options -Indexes +FollowSymLinks +ExecCGI
Zeile 1016: Zeile 1044:
                </RequireAll>                </RequireAll>
         </Location>         </Location>
 +
 +        DirectoryIndex gitweb.cgi
  
         ErrorLog logs/git_error.log         ErrorLog logs/git_error.log
Zeile 1047: Zeile 1077:
         </Directory>         </Directory>
  
-        ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/+        ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/ 
 +        ScriptAliasMatch "(?x)^/git/(.*/(HEAD | \ 
 +                                info/refs | \ 
 +                                objects/(info/[^/]+ | \ 
 +                                [0-9a-f]{2}/[0-9a-f]{38} | \ 
 +                                pack/pack-[0-9a-f]{40}\.(pack|idx)) | \ 
 +                                git-(upload|receive)-pack))$"
 +                                /usr/libexec/git-core/git-http-backend/$1
  
         SetEnv GIT_PROJECT_ROOT /srv/git         SetEnv GIT_PROJECT_ROOT /srv/git
         SetEnv GIT_HTTP_EXPORT_ALL         SetEnv GIT_HTTP_EXPORT_ALL
  
-        DocumentRoot "/srv/git"+        DocumentRoot "/var/www/git" 
 +        <Directory "/var/www/git"> 
 +                AddHandler perl-script .cgi 
 +                Options -Indexes +FollowSymLinks +ExecCGI 
 +                AllowOverride None 
 +                # LDAP 
 +                AuthType Basic 
 +                AuthName "GitWeb Repository Bare Remote Server (git.tachtler.net)" 
 +                AuthBasicProvider ldap 
 +                AuthLDAPURL "ldaps://ldap.tachtler.net:636/dc=tachtler,dc=net?uid" 
 +                AuthLDAPBindDN "cn=Ersatzbenutzer,dc=tachtler,dc=net" 
 +                AuthLDAPBindPassword "geheim" 
 +                <RequireAll> 
 +                        # (enable for LDAP access) 
 +                        Require ldap-user klaus 
 +               </RequireAll> 
 +                PerlResponseHandler ModPerl::Registry 
 +                PerlOptions +ParseHeaders 
 +                SetEnv  GITWEB_CONFIG  /etc/gitweb.conf 
 +        </Directory> 
 + 
 +        # DocumentRoot "/srv/git"
         <Directory "/srv/git">         <Directory "/srv/git">
                 Options -Indexes +FollowSymLinks +ExecCGI                 Options -Indexes +FollowSymLinks +ExecCGI
Zeile 1084: Zeile 1142:
                </RequireAll>                </RequireAll>
         </Location>         </Location>
 +
 +        DirectoryIndex gitweb.cgi
  
         <Files ~ "\.(cgi|shtml|phtml|php3?)$">         <Files ~ "\.(cgi|shtml|phtml|php3?)$">
Zeile 1108: Zeile 1168:
 <code apache> <code apache>
 ... ...
 +        # ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
 +        ScriptAliasMatch "(?x)^/git/(.*/(HEAD | \
 +                                info/refs | \
 +                                objects/(info/[^/]+ | \
 +                                [0-9a-f]{2}/[0-9a-f]{38} | \
 +                                pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
 +                                git-(upload|receive)-pack))$" \
 +                                /usr/libexec/git-core/git-http-backend/$1
 +...
 +
 +        DocumentRoot "/var/www/git"
 +        <Directory "/var/www/git">
 +                AddHandler perl-script .cgi
 +                Options -Indexes +FollowSymLinks +ExecCGI
 +                AllowOverride None
 +                # LDAP
 +                AuthType Basic
 +                AuthName "GitWeb Repository Bare Remote Server (git.tachtler.net)"
 +                AuthBasicProvider ldap
 +                AuthLDAPURL "ldaps://ldap.tachtler.net:636/dc=tachtler,dc=net?uid"
 +                AuthLDAPBindDN "cn=Ersatzbenutzer,dc=tachtler,dc=net"
 +                AuthLDAPBindPassword "geheim"
 +                <RequireAll>
 +                        # (enable for LDAP access)
 +                        Require ldap-user klaus
 +               </RequireAll>
 +                PerlResponseHandler ModPerl::Registry
 +                PerlOptions +ParseHeaders
 +                SetEnv  GITWEB_CONFIG  /etc/gitweb.conf
 +        </Directory>
 +
 +        # DocumentRoot "/srv/git"
 +...
 +
 +        DirectoryIndex gitweb.cgi
 +...
 +</code>
 +
 +**__VORHER__**:
 +  * <code apache>        ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/</code>
 +
 +**__NACHHER__**:
 +  * <code apache>        # ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
 +        ScriptAliasMatch "(?x)^/git/(.*/(HEAD | \
 +                                info/refs | \
 +                                objects/(info/[^/]+ | \
 +                                [0-9a-f]{2}/[0-9a-f]{38} | \
 +                                pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
 +                                git-(upload|receive)-pack))$" \
 +                                /usr/libexec/git-core/git-http-backend/$1</code>
 +
 +Bezeichnet das Skript, welches beim Zugriff auf den [[http://httpd.apache.org/|Apache HTTP Server]]-VHOST zur Anwendung kommt und die entsprechenden [[https://git-scm.com/|Git]] Befehle verarbeitet, **allerdings __nur__ noch diejenigen Befehle, welche auch für das Skript selbst bestimmt sind!**.
 +
 +**__VORHER__**:
 +  * <code apache>        DocumentRoot "/srv/git"</code>
 +
 +**__NACHHER__**:
 +  * <code apache>        DocumentRoot "/var/www/git"
 +        <Directory "/var/www/git">
 +                AddHandler perl-script .cgi
 +                Options -Indexes +FollowSymLinks +ExecCGI
 +                AllowOverride None
 +                # LDAP
 +                AuthType Basic
 +                AuthName "GitWeb Repository Bare Remote Server (git.tachtler.net)"
 +                AuthBasicProvider ldap
 +                AuthLDAPURL "ldaps://ldap.tachtler.net:636/dc=tachtler,dc=net?uid"
 +                AuthLDAPBindDN "cn=Ersatzbenutzer,dc=tachtler,dc=net"
 +                AuthLDAPBindPassword "geheim"
 +                <RequireAll>
 +                        # (enable for LDAP access)
 +                        Require ldap-user klaus
 +               </RequireAll>
 +                PerlResponseHandler ModPerl::Registry
 +                PerlOptions +ParseHeaders
 +                SetEnv  GITWEB_CONFIG  /etc/gitweb.conf
 +        </Directory>
 +
 +        # DocumentRoot "/srv/git"</code>
 +
 +Hier wurde als erstes das ''DocuemtRoot'' auf ''/var/www/git'' abgeändert, da hier das ''perl''-Skript ''gitweb.cgi'' liegt und alle anderen Bestandteile der Web-Anwendung wie z.B. Bilder oder CSS-Dateien.
 +Anschließend wir die ''Directory'' entsprechend konfiguriert:
 +  - Es wird ein **Handler** für das ''perl''-Skipt hinzugefügt
 +  - Die Zugriffsmöglichkeiten werden festgelegt, entscheidend ist hier ''+ExecCGI''
 +  - Es wird beim Zugriff auf das Verzeichnis, eine **Authentifizierung gegen LDAP** erforderlich
 +  - Es wird der ''PerlResponsHandler'' gesetzt
 +  - Es wird die ''perl''-Option ''+ParseHeaders'' gesetzt
 +  - Es wird die Umgebungsvariable ''GITWEB_CONFIG'' mit dem Pfad zur Konfigurationsdatei von [[https://git.wiki.kernel.org/index.php/Gitweb|GitWeb]] gesetzt
 +
 +  * <code apache>        DirectoryIndex gitweb.cgi</code>
 +
 +Beim Aufruf der URL soll das ''perl''-Skript ''gitweb.cgi'' die ''DirectoryIndex''-Datei sein und somit aufgerufen werden.
 +
 +===== Aufruf der Web-Anwendung =====
 +
 +Nach erfolgreichem **Neustart (restart)** des [[http://httpd.apache.org/|Apache HTTP Server]], was mit nachfolgendem Befehl durchgeführt werden kann:
 +<code>
 +# systemctl restart httpd.service
 </code> </code>
  
 +Kann wie folgt unter nachfolgender URL [[https://git.tachtler.net]] die Web-Anwendung [[https://git.wiki.kernel.org/index.php/Gitweb|GitWeb]] aufgerufen werden, was z.B. eine Ausgabe wie die nachfolgende zum Vorschein bringen sollte:
  
-:!**FIXME Hier geht es weiter... / To be continued...**+{{:tachtler:git:git_gitweb_startsite.png|GitWeb - Startseite}}
tachtler/git_centos_7_-_gitweb.txt · Zuletzt geändert: 2015/08/07 15:36 von klaus