Este artículo necesita ser actualizado para reflejar la última plantilla de Accelerator.
Cómo instalar Apache con SVN
1) Crea DocumentRoot y /home/svn de modo que Apache no haga tonterías
# mkdir -p /home/svn/public
2) Crea el repositorio de subversion y el archivo svn.digest.svn-access.conf inicial
# svnadmin create /home/svn/repos # chown -R nobody:nobody /home/svn # ls -l /home/svn/repos/ total 36 -rw-r--r-- 1 nobody nobody 229 Jan 11 23:31 README.txt drwxr-xr-x 2 nobody nobody 5 Jan 11 23:31 conf/ drwxr-xr-x 2 nobody nobody 2 Jan 11 23:31 dav/ drwxr-sr-x 5 nobody nobody 10 Jan 11 23:31 db/ -r--r--r-- 1 nobody nobody 2 Jan 11 23:31 format drwxr-xr-x 2 nobody nobody 11 Jan 11 23:31 hooks/ drwxr-xr-x 2 nobody nobody 4 Jan 11 23:31 locks/
3) Crea el archivo svn-access.conf al que te vas a referir en el httpd.conf de Apache
# nano /home/svn/svn-access.conf
Y complétalo de modo similar al siguiente
# cat /home/svn/svn-access.conf [groups] commit = username readonly = readonly-username [repos:/] @commit = rw @readonly = r
4) Crea lo que será el archivo de contraseñas (el modificador -c sólo se usa la primera vez)
# htdigest -c /home/svn/svn.digest.passwd YOURDOMAIN.com username Adding password for username in realm YOURDOMAIN.com. New password: Re-type new password:
5) Comprueba qué ha sucedido
# cat /home/svn/svn.digest.passwd username:YOURDOMAIN.com:8d4042a255eed92d33d5b5b0046b7afd
6) Así es como se añade otro usuario:
# htdigest /home/svn/svn.digest.passwd YOURDOMAIN.com username2 Adding user username2 in realm YOURDOMAIN.com New password: Re-type new password:
Y podrías modificar svn-access.conf como sigue
# cat /home/svn/svn-access.conf [groups] commit = username, username2 readonly = readonly-username [repos:/] @commit = rw @readonly = r
5) A continuación, vamos a configurar los archivos de host virtual para svn.YOURDOMAIN.com
# cd etc/virtualhosts/ # nano 001-svn.YOURDOMAIN.com
Y usa el contenido que se muestra a continuación desde <VirtualHost> a </VirtualHost>
<VirtualHost YOURPUBLICIP:80> ServerName svn.YOURDOMAIN.com DocumentRoot /home/svn/public/ <Location /> DAV svn SVNParentPath /home/svn SVNAutoversioning On AuthzSVNAccessFile /home/svn/svn-access.conf AuthName "YOURDOMAIN.com" AuthType Digest AuthDigestProvider file AuthUserFile /home/svn/svn.digest.passwd AuthDigestDomain http://svn.YOURDOMAIN.com/ http://YOURDOMAIN.com/ Require valid-user Satisfy Any AllowOverride All </Location> </VirtualHost>