3195
Kommentar: typo
|
3188
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: {{{ |
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