Unterschiede zwischen den Revisionen 2 und 3
Revision 2 vom 2005-04-10 23:01:24
Größe: 3195
Autor: lars
Kommentar: typo
Revision 3 vom 2005-04-10 23:33:04
Größe: 3188
Autor: lars
Kommentar: typo
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 13: Zeile 13:
Leider ist es mit dieser Konfiguration noch nicht möglich, die Lese-Rechte zu konfigurieren, da die URLs der Repositories nicht hierarchisch sind. Um die Rechte zu kontrollieren, sind folgende Schritte erforderlich: Leider ist es mit dieser Konfiguration noch nicht möglich, die Lese-Rechte zu konfigurieren, da die URLs der Repositories nicht hierarchisch sind. Um dies zu erreichen, sind folgende Schritte erforderlich:
Zeile 18: Zeile 18:
 * mit der folgenden apache-Konfigurationsdatei (beispielsweise ''/etc/apache2/conf.d/websvn.conf'') aktivierst du ''MultiViews'' und setzt den korrekten ''DirectoryIndex'': {{{  * mit der folgenden apache-Konfigurationsdatei (beispielsweise ''/etc/apache2/conf.d/websvn.conf'') aktivierst du ''!MultiViews'' und setzt den korrekten ''!DirectoryIndex'': {{{
Zeile 61: Zeile 61:
 * in der ''/etc/websvn/wsvn.php'' solltest du folgende Zeile anpassen, falls du dem ''MultiViews''-Ansatz im vorigen Abschnitt gefolgt bist: {{{  * in der ''/etc/websvn/wsvn.php'' solltest du folgende Zeile anpassen, falls du dem ''!MultiViews''-Ansatz im vorigen Abschnitt gefolgt bist: {{{

TableOfContents


Installation

Die Einrichtung von [http://websvn.tigris.org WebSvn] ist recht trivial:

apt-get install websvn 

Bei der anschließenden Frage nach dem Parent-Directory der Repositories passt für unsere Konfiguration /data/repos. Die anschließende Eingabe der Repositories ist irrelevant.

Anpassung des apache

Jetzt sind alle Repositories unter https://svn.systemausfall.org/websvn erreichbar.

Leider ist es mit dieser Konfiguration noch nicht möglich, die Lese-Rechte zu konfigurieren, da die URLs der Repositories nicht hierarchisch sind. Um dies zu erreichen, sind folgende Schritte erforderlich:

  • das aktive /websvn/ beispielsweise nach /websvn-base umbenennen

    mv /var/www/websvn /var/www/websvn-base 
  • die wsvn.php-Datei verlinken:

    ln -s /usr/share/websvn/wsvn.php /var/www/websvn.php 
  • mit der folgenden apache-Konfigurationsdatei (beispielsweise /etc/apache2/conf.d/websvn.conf) aktivierst du MultiViews und setzt den korrekten DirectoryIndex:

    <Location />
        DirectoryIndex websvn.php index.php
        Options MultiViews FollowSymLinks
    </Location>
    
    <Location /websvn-base>
        Options FollowSymLinks
        AllowOverride None
        order allow,deny
        allow from all
        <IfModule mod_php4.c>
            php_flag magic_quotes_gpc Off
            php_flag track_vars On
        </IfModule>
    </Location>
    
    <Location /websvn/>
        DAV svn
        SVNParentPath /data/repos
        AuthzSVNAccessFile /data/etc/svn-access.conf
    
        AuthType Basic
        AuthName "subversion auf systemausfall.org"
        AuthLDAPUrl ldap://ldap.sao/o=neofaxe,dc=systemausfall,dc=org?cn?sub?(objectClass=webAccount)
        # stattdessen kannst du natuerlich auch AuthUserFile verwenden, falls du keinen LDAP-Server nutzt
    
        # diese Kombination von Satisfy und Require sorgt dafuer, dass anonymer Zugriff moeglich ist
        # nur wenn ein Nutzername beispielsweise fuer Schreibzugriff (siehe AuthzSVNAccessFile) erforderlich ist,
        # erfolgt eine Authentifikation
        Satisfy Any
        Require valid-user
    </Location> 

Diese Konfiguration ist zusammengebasteltet - aber es funktioniert wenigstens :)

Falls du Verbesserungsvorschläge hast, dann her damit!

WebSvn-Konfiguration

  • in der /etc/websvn/config.php folgende Zeile aktivieren:

    $config->useMultiViews(); 
  • eventuell dann noch folgende Zeilen:

    $config->allowDownload();
    $config->useEnscript(); 
  • in der /etc/websvn/wsvn.php solltest du folgende Zeile anpassen, falls du dem MultiViews-Ansatz im vorigen Abschnitt gefolgt bist:

    $locwebsvnhttp = "/websvn-base"; 
  • in der /etc/websvn/svn_deb_conf.php sollte nur folgende Zeile aktiv sein:

    $config->parentPath("/data/repos"); 

Einstellungen des Proxy-Servers [optional]

Unsere Server-Struktur verwendet einen Proxy zur Verteilung der Anfragen auf die dahinterliegenden Web-Server. Die entsprechenden Zeilen für die Konfiguration des [www.apsis.ch/pound/ Pound-Proxy] sind folgende:

UrlGroup "^/svn.*"
BackEnd svn.sao,80,1
EndGroup

UrlGroup "^/websvn.*"
BackEnd svn.sao,80,1
EndGroup 

WebSvnEinrichtung (zuletzt geändert am 2012-06-13 21:26:24 durch anonym)


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.