Installeer Subversion met Web Access op Ubuntu
Dit artikel behandelt de installatie van subversion met de apache-module, zodat deze eenvoudig toegankelijk is vanaf andere systemen op een openbaar netwerk. Als u een veiliger svnserver wilt, kunt u svnserve + ssh gebruiken, wat niet wordt behandeld in dit artikel.
Om subversion te installeren, opent u een terminal en voert u de volgende opdracht uit:
sudo apt-get install subversion libapache2-svn
We gaan de subversion-repository maken in / svn, hoewel je een locatie met een goede hoeveelheid ruimte moet kiezen.
sudo svnadmin create / svn
Vervolgens moeten we het configuratiebestand voor de subversion-webdav-module bewerken. U kunt desgewenst een andere editor gebruiken.
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
Het locatie-element in het configuratiebestand dicteert de hoofdmap waar subversion toegankelijk zal zijn, bijvoorbeeld: http://www.server.com/svn
De DAV-regel moet niet worden gecommentarieerd om de dav-module in te schakelen
# Onthoud dit om de repository in te schakelen,
DAV svn
De SVNPath-regel moet worden ingesteld op dezelfde plaats waar u de repository hebt gemaakt met de opdracht svnadmin.
# Stel dit in op het pad naar uw repository
SVNPath / svn
In het volgende gedeelte kunt u verificatie inschakelen. Dit is slechts basisverificatie, dus beschouw het niet als extreem veilig. Het wachtwoordbestand zal zich daar bevinden waar de AuthUserFile-instelling dit instelt ... waarschijnlijk het beste om het standaard te laten.
# Onthoud de volgende 3 regels om basisverificatie in te schakelen
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Om een gebruiker in de repository te maken, gebruikt u de volgende opdracht:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd
Merk op dat u de -c optie de EERSTE keer moet gebruiken dat u een gebruiker maakt. Daarna wilt u alleen de optie -m gebruiken, die de MD5-codering van het wachtwoord opgeeft, maar het bestand niet opnieuw maakt.
Voorbeeld:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd geek
Nieuw paswoord:
Type nieuw wachtwoord opnieuw:
Wachtwoord toevoegen voor gebruiker nerd
Start apache opnieuw door de volgende opdracht uit te voeren:
sudo /etc/init.d/apache2 opnieuw opstarten
Als u nu in uw browser naar http://www.server.com/svn gaat, moet u zien dat de repository is ingeschakeld voor anonieme leesrechten, maar voor commit-toegang is een gebruikersnaam vereist.
Als u alle gebruikers wilt dwingen om te verifiëren, zelfs voor leestoegang, voegt u de volgende regel recht onder de regel AuthUserFile van boven toe toe. Start apache opnieuw na het wijzigen van deze regel.
Vereist geldige gebruiker
Als u nu uw browser ververst, wordt u om uw inloggegevens gevraagd:
U hebt nu een werkende subversieserver!