Najbolj prilagodljiv sistem za Subversion dobite pri uporabi strežnika Apache. Njegova namestitev je sicer nekoliko bolj zahtevna, vendar ima v primerjavi z ostalimi strežniki številne prednosti:
Strežniki Subversion, postavljeni na strežniku Apache, uporabljajo protokol WebDAV, ki ga podpirajo številni ostali programi. Ta omogoča, da naprimer priklopite skladišče kot “internetno mapo” v Windowsovem Raziskovalcu in do nje dostopate kot do katerekoli druge mape v datotečnem sistemu
V spletni brskalnik lahko vpišete naslov URL skladišča in brskate po vsebini, ne da bi imeli nameščenega odjemalca za Subversion. To omogoča dostop do podatkov precej širšemu krogu uporabnikov.
Uporabite lahko prav vse avtentikacijske mehanizme, ki jih podpira Apache, vključno z SSPI in LDAP.
Ker je strežnik Apache zelo stabilen in varen, je prav tako varno tudi vaše skladišče. Uporabite lahko tudi enkripcijo SSL.
Za namestitev strežnika Apache potrebujete računalnik s sistemom Windows 2000, Windows XP+SP1, Windows 2003, Vista ali Server 2008.
Prosimo, upoštevajte, da lahko uporaba operacijskega sistema Windows XP brez prvega paketa popravkov (service pack 1) pripelje do nepravinih podatkov v omrežju in tako pokvari skladišče!
Prenesite si zadnjo različico spletnega strežnika Apache z naslova http://httpd.apache.org/download.cgi. Poskrbite, da prenesete različico 2.2.x - različica 1.3.x.x ne bo delovala!
Namestitveni program MSI za spletni strežnik Apache dobite, če kliknete na other files in greste na pot binaries/win32. Lahko izbere datoteko apache-2.2.x-win32-x86-openssl-0.9.x.msi (vključuje tudi OpenSSL).
Ko ste prenesli namestitveni program za strežnik Apache 2, ga poženite in vodil vas bo skozi namestitveni proces. Preverite, da ste pravilno vnesli naslov URL strežnika (če strežnik nima imena DNS ali pa ga ne poznate, vnesite kar naslov IP strežnika). Priporočamo, da namestite Apache za vse uporabnike, na vrata 80, kot storitev (service). Opomba: če že imate nameščen IIS ali kakšen drug program, ki posluša port 80, je lahko namestitev neuspešna. Če se to zgodi, pojdite v namestitveno mapo strežnika Apache, običajno c:\Program Files\Apache Group\Apache2\conf in poiščite datoteko httpd.conf. Spremenite jo tako, da vrednost vrat v izrazu Listen 80 zamenjate z vrednostjo katerihkoli prostih vrat, na primer Listen 81. Potem namestitev ponovite - tokrat bi morala biti uspešna.
Sedaj preverite, če spletni strežnik Apache deluje pravilno. Usmerite svoj spletni brskalnik na stran http://localhost/ - pojaviti se mora prednastavljena spletna stran.
Če se odločite namestiti strežnik Apache kot storitev (service), upoštevajte, da se bo po privzetih nastavitvah pognal s krajevnim sistemskim računom (local system account). Bolj varen način je, da za poganjanje strežnika Apache ustvarite poseben račun.
Zagotovite, da ima račun, pod katerim teče strežnik Apache, v mapi, kjer se nahajajo skladišča, eksplicitno določene vse pravice (desni klik na mapo | lastnosti | varnost). V nasprotnem primeru uporabniki ne bodo mogli objavljati svojih sprememb.
Tudi če Apache teče pod sistemskim računom, morate pravico vseeno določiti (v tem primeru za račun SYSTEM).
Če Apache tega dovoljenja nima, bodo uporabniki dobili opozorilo “Dostop zavrnjen”, ki je v dnevniku napak strežnika Apache predstavljen s številko 500.
Prenesite zadnjo različico Win32 dvojiških datotek Subversion za Apache. Prepričajte se, da ste prenesli pravilno različico, drugače boste ob ponovnem zagonu dobili čudna sporočila o napakah. Če uporabljate Apache 2.2.x, uporabite povezavo http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100.
Poženite namestitveni program za Subversion in sledite navodilom. Če namestitveni program ugotovi, da imate nameščen strežnik Apache, ste že skoraj pri koncu. Če strežnika ne najde, potem vas čaka še nekaj korakov.
Z Raziskovalcem pojdite v namestitveno mapo Subversion (običajno c:\program files\Subversion) in poiščite datoteki /httpd/mod_dav_svn.so in mod_authz_svn.so. Prekopirajte ti datoteki v podmapo modules namestitvene mape strežnika Apache (običajno c:\program files\apache group\apache2\modules ).
Prekopirajte datoteki /bin/libdb*.dll in /bin/intl3_svn.dll iz namestitvene mape Subversion v podmapo bin strežnika Apache.
Popravite konfiguracijsko datoteko strežnika Apache (ponavadi C:\Program Files\Apache Group\Apache2\conf\httpd.conf) z urejevalnikom besedil (n. pr. z Beležko) in naredite naslednje spremembe:
Odstranite komentar (oznako '#') izpred naslednjih vrstic:
#LoadModule dav_fs_module modules/mod_dav_fs.so #LoadModule dav_module modules/mod_dav.so
Dodajte naslednji vrstici na konec sekcije LoadModule.
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so
Apache in Subversion sta nameščena, vendar Apache še ne zna delati z odjemalci Subversion, kakršen je TortoiseSVN. Da poveste strežniku Apache, kateri naslovi URL bodo uporabljeni kot skladišča Subversion, morate popraviti njegovo konfiguracijsko datoteko (običajno se nahaja na c:\program files\apache group\apache2\conf\httpd.conf) z urejevalnikom besedila (n. pr. z Beležko):
Na koncu datoteke Config dodajte naslednje vrstice:
<Location /svn> DAV svn SVNListParentPath on SVNParentPath D:\SVN #SVNIndexXSLT "/svnindex.xsl" AuthType Basic AuthName "Skladišča Subversion" AuthUserFile passwd #AuthzSVNAccessFile svnaccessfile Require valid-user </Location>
S tem nastavite strežnik Apache tako, da so vsa skladišča sistema Subversion znotraj mape D:\SVN. Zunanjemu svetu so skladišča na voljo na naslovu http://MojStrežnik/svn/ . Dostop je omejen na uporabniška imena/gesla, ki so navedena v datoteki passwd.
Za ustvarjanje datoteke passwd ponovno odprite ukazno lupino (okno DOS), pojdite v mapo strežnika Apache2 (ponavadi c:\program files\apache group\apache2) in z naslednjim ukazom ustvarite datoteko:
bin\htpasswd -c passwd <username>
S tem ustvarite datoteko z imenom passwd, ki se uporablja za avtentikacijo. Dodatne uporabnike lahko vnesete z
bin\htpasswd geslo <uporabniško ime>
Ponovno zaženite storitev (service) Apache.
Usmerite spletni brskalnik na http://MojStrežnik/svn/MojeNovoSkladišče (kjer je MojeNovoSkladišče ime skladišča Subversion, ki je ste ga predhodno ustvarili). Če je šlo vse po načrtih, potem vas mora pričakati vnosno polje za uporabnišo ime in geslo. Po vpisu lahko vidite vsebino skladišča.
Kratka obrazložitev pravkar vnesenega:
Tabela 3.1. Nastavitve Apache httpd.conf
| Nastavitev | Razlaga |
|---|---|
| <Location /svn> | pomeni, da so skladišča sistema Subversion na voljo na naslovu URL http://MojStrežnik/svn/ |
| DAV svn | pove strežniku Apache, kateri modul bo odgovoren za strežbo naslova URL - v tem primeru modul Subversion. |
| SVNListParentPath on | V različicah sistema Subversion 1.3 ali novejših ta ukaz omogoča izpis seznama vse razpoložljivih skladišč v mapi SVNParentPath. |
| SVNParentPath D:\SVN | pove sistemu Subversion, naj skladišča išče v mapi D:\SVN |
| SVNIndexXSLT "/svnindex.xsl" | Nastavitev za lepši izpis pri brskanju po skladiščih. |
| AuthType Basic | se uporablja za nastavitev osnovne avtentikacije, n. pr. uporabniško ime/geslo |
| AuthName "Subversion repositories" | se uporablja kot informacija ob prikazu pojavnega okna za avtentikacijo. Uporabniku pove, za kaj se avtentikacija uporablja. |
| AuthUserFile passwd | določi datoteko z gesli, ki naj se uporabi za avtentikacijo |
| AuthzSVNAccessFile | lokacija datoteke dostopov za poti v skladiščih Subversion |
| Require valid-user | določi, da lahko do naslova URL dostopajo le uporabniki, ki so navedli pravilno kombinacijo uporabniškega imena in gesla |
Vendar je to le primer. Obstaja še zelo veliko stvari, ki jih lahko naredite s spletnim strežnikom Apache.
Če želite, da imajo pravico branja v vašem skladišču vsi uporabniki, pravico pisanja pa samo nekateri, spremenite vrstico
Require valid-user
v
<LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept>
Z uporabno datoteke passwd lahko omejite oziroma dovolite dostop do vseh skladišč naenkrat. Če želite imeti več nadzora nad tem, kateri uporabnik ima pravice v določeni mapi skladišča, odkomentirajte vrstico
#AuthzSVNAccessFile svnaccessfile
in ustvarite datoteko dostopa. Apache poskrbi, da lahko samo veljavni uporabniki dostopajo do lokacije /svn, in potem posreduje uporabniško ime modulu AuthzSVNAccessFile, tako da lahko le-ta bolj podrobno ugotovi pravice glede na pravila, ki so zapisana v datoteki dostopa. Poti so zapisane v obliki skladišče:pot ali preprosto pot. Če ne določite skladišča, pravilo velja za vsa skladišča v mapi SVNParentPath. Oblika avtorizacijske datoteke, ki jo uporablja mod_authz_svn, je opisana v “Avtorizacija na osnovi poti”
Da bi polepšali izpis pri brskanju po skladišču, odkomentirajte naslednjo vrstico
#SVNIndexXSLT "/svnindex.xsl"
in dodajte datoteke svnindex.xsl, svnindex.css in menucheckout.ico v korensko mapo dokumentov na strežniku (ponavadi C:/Program Files/Apache Group/Apache2/htdocs). Mapa se nastavi z ukazom DocumentRoot v konfiguracijski datoteki strežnika Apache.
You can get those three files directly from our source repository at http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/contrib/other/svnindex. (“TortoiseSVN je brezplačen!” explains how to access the TortoiseSVN source repository).
Datoteka XSL skladišča TortoiseSVN ima koristen dodatek: če uporabljate za brskanje po skladišču spletni brskalnik, se ob vsaki mapi v skladišču izriše ikona na desni strani imena. Če kliknete nanjo, se prikaže pogovorno okno za prevzem za ta naslov URL.
Če ste pri nameščanju nastavili ukaz SVNParentPath, potem vam ni treba spreminjati konfiguracijske datoteke Apache vsakič, ko dodate novo skladišče. Enostavno ustvarite novo skladišče na isti lokaciji, na kateri ste ustvarili prvo skladišče! V našem podjetju imamo neposreden dostop do te lokacije na strežniku preko SMB (običajen datotečni dostop sistema Windows). Tako enostavno na tej lokaciji ustvarimo novo mapo, uporabimo ukaz → in nov projekt ima svoj dom...
Če uporabljate Subversion 1.3 ali novejšo različico, lahko uporabite ukaz SVNListParentPath on. S tem dovolite strežniku Apache, da prikaže seznam vseh projektov, če v brskalnik vpišete korensko pot namesto določenega skladišča.
Modul mod_authz_svn omogoča podrobno nastavitev pravic dostopa na osnovi uporabniških imen in poti skladišč. Možnost je na voljo pri uporabi strežnika Apache, od različice Subversion 1.3 naprej pa tudi pri uporabi svnserve.
Primer datoteke izgleda takole:
[groups] skrbniki = john, kate razvijalci1 = john, rachel, sally razvijalci2 = kate, peter, mark dokumentaristi = bob, jane, mike tecajniki = zak # Privzeto pravilo za dostope za VSA skladišča # Vsi lahko berejo, skrbniki imajo pravice za pisanje,# Dan German nima nobenih pravic. [/] * = r @skrbniki = rw dangerman = # Dovoli razvijalcem popoln dostop do projektnih skladišč [proj1:/] @razvijalci1 = rw [proj2:/] @razvijalci2 = rw [bigproj:/] @razvijalci1 = rw @razvijalci2 = rw trevor = rw # Dodeli dokumentaristom pravice pisanja v vseh doc mapah [/trunk/doc] @dokumentaristi = rw # Dodeli tečajnikom pravice pisanja le v skladišču TrainingRepos [TrainingRepos:/] @tecajniki = rw
Upoštevajte, da je preverjanje vsake poti lahko zelo potratna operacija, predvsem v primeru dnevnika. Strežnik preverja vsako spremenjeno pot v vsaki reviziji in preveri berljivost, kar je lahko zelo zamudno pri revizijah, kjer je spremenjeno veliko število datotek.
Avtentikacija in avtorizacija sta dva ločena procesa. Če želi uporabnik dobiti dostop do poti v skladišču, mora zadostiti obema pogojema: običajni zahtevi po avtentikaciji in avtorizacijski zahtevi za dostop do datoteke.
Kot se verjetno opazili, morate narediti vnos uporabniškega imena in gesla v datoteko passwd za vsakega uporabnika posebej. In če želite, da vaši uporabniki (iz varnostnih razlogov) periodično spreminjajo geslo, morate te spremembe vnašati ročno.
Vendar obstaja rešitev problema - v primeru, če dostopate do skladišča iz krajevnega omrežja z domenskim kontrolerjem sistema Windows: mod_auth_sspi!
Originalni modul SSPI, vključno z izvorno kodo, je včasih ponujajo podjetje Syneapps. Vendar je razvoj že nekaj časa ustavljen. A ne obupajte, skupnost nadaljuje s projektom in ga izboljšuje. Nova lokacija projekta je SourceForge.
Prenesite modul, ki ustreza različi vašega strežnika Apache, prekopirajte datoteko mod_auth_sspi.so v podmapo modules namestitvene mape strežnika Apache.
Popravite konfiguracijsko datoteko strežnika Apache: dodajte vrstico
LoadModule sspi_auth_module modules/mod_auth_sspi.so
v sekcijo LoadModule. To vrstico morate vstaviti pred vrstico
LoadModule auth_module modules/mod_auth.so
Če želite, da Subversion uporablja ta tip avtentikacije, morate spremeniti vrstico
AuthType Basic
v
AuthType SSPI
in dodati
SSPIAuth On SSPIAuthoritative On SSPIDomain <domaincontroller> SSPIOmitDomain on SSPIUsernameCase lower SSPIPerRequestAuth on SSPIOfferBasic On
v blok <Location /svn>. Če nimate domenskega kontrolerja, pustite ime domenske kontrole na <domaincontroller>.
Če za avtentikacijo uporabljate SSPI, potem ne potrebujete več vrstice AuthUserFile za datoteko gesel. Apache avtenticira vaše uporabniško ime in geslo v domeni Windows. Morali pa boste posodobiti seznam uporabnikov v datoteki svnaccessfile, da bo le-ta vsebovala tudi uporabnike oblike DOMENA\uporabniško ime.
Avtentikacija SSPI je na voljo le va varne (SSL) povezave (https). Če za dostop do strežnika uporabljate navadno (http) povezavo, stvar ne bo delovala.
Za vklop varne povezave (SSL) na strežniku preberite “Zavarovanje strežnika z SSL”
Datoteke AuthzSVNAccessFile sistema Subversion so občutljive na velike in male črke pri navajanju uporabniških imen (beseda UPorabnik je torej drugačna kot uporabnik).
V Microsoftovem svetu domene Windows in uporabniška imena ne ločijo velikih in malih črk. Kljub vsemu nekateri skrbniki sistema radi uporabljajo kamelji stil za uporabniške račune (n.pr. JUporabnik).
Ta razlika pa vam lahko ponagaja pri uporabi avtentikacije SSPI. Sistem Subversion dobi domeno Windows in uporabniško ime v natančno takšni obliki, kot ju je uporabnik vpisal. Internet Explorer pogosto pošlje uporabniško ime strežniku Apache v obliki, ki je bila uporabljena pri ustvarjanju računa.
Rezultat tega je, da boste mogoče potrebovali vsaj dva vnosa v AuthzSVNAccessFile za vsakega uporabnika -- vnos z malimi črkami in vnos v enakem formatu, kot ga Internet Explorer pošlje strežniku Apache. Prav tako boste morali naučiti uporabnike, da vnašajo avtentikacijske podatke z malimi črkami, ko dostopajo do skladišč preko programa TortoiseSVN.
Zapis dostopov in napak strežnika Apache sta vaša najboljša prijatelja, ko je potrebno reševati takšne težave. Pomagata vam ugotoviti natančen niz, ki ga dobi modul AuthzSVNAccessFile. Mogoče boste morali poskušati ugotoviti pravilno obliko niza v datoteki svnaccessfile (n. pr. DOMENA\uporabnik oz. DOMEMA//uporabnik), preden bo sistem res deloval.
Določiti je mogoče več virov za avtentikacijo skladišč Subversion. Da bi to delovalo, morate vsako avtentikacijo narediti neavtoritativno. S tem bo Apache pri več virih preveril, ali je sta uporabniško ime in geslo pravilna.
Pogosta je situacija, ko imamo avtentikacijo tako preko domene Windows kot preko datoteke passwd. Na ta način lahko omogočite dostop tudi uporabnikom, ki nimajo uporabniškega imena in gesla za domeno Windows.
Da bi omogočili avtentikacijo preko domene Windows in datoteke passwd, dodajte naslednji vrstici znotraj bloka <Location> v konfiguracijski datoteki strežnika Apache:
AuthBasicAuthoritative Off SSPIAuthoritative Off
Sledi celoten primer konfiguracije strežnika Apache za kombinacijo avtentikacije preko domene Windows in dateteke passwd:
<Location /svn> DAV svn SVNListParentPath on SVNParentPath D:\SVN AuthName "Skladišča Subversion" AuthzSVNAccessFile svnaccessfile.txt # Logiranje preko domen NT. AuthType SSPI SSPIAuth On SSPIAuthoritative Off SSPIDomain <domaincontroller> SSPIOfferBasic On # Logiranje preko datoteke passwd. AuthType Basic AuthBasicAuthoritative Off AuthUserFile passwd Require valid-user </Location>
Čeprav ima Apache 2.2.x podporo za OpenSSL, le-ta ob privzetih nastavitvah ni vključena. Vključiti jo morate ročno.
V konfiguracijski datoteki strežnika Apache odstranite komentar izpred naslednjih vrstic:
#LoadModule ssl_module modules/mod_ssl.so
in na koncu
#Include conf/extra/httpd-ssl.conf
nato spremenite vrstico (v eni vrstici)
SSLMutex "file:C:/Program Files/Apache Software Foundation/\ Apache2.2/logs/ssl_mutex"
v
SSLMutex default
Nato morate ustvariti certifikat SSL. Odprite ukazni poziv (okno DOS) in pojdite v namestitveno mapo strežnika Apache (n. pr. C:\program files\apache group\apache2) in vpišite naslednji ukaz:
bin\openssl req -config conf\openssl.cnf -new -out my-server.csr
Vpisati boste morali šifrirno frazo. Ne uporabljajte enostavnih besed, ampak vpišite cel stavek, naprimer del pesmi. Daljša je fraza, boljša je. Vnesti morate še naslov URL vašega strežnika. Na ostala vprašanja vam ni nujno odgovoriti, vendar vam priporočamo, da vseeno odgovorite.
Običajno se datoteka privkey.pem ustvari samodejno, če pa se ne, morate vtipkati naslednji ukaz, da jo ustvarite:
bin\openssl genrsa -out conf\privkey.pem 2048
Nato vpišite naslednje ukaze
bin\openssl rsa -in conf\privkey.pem -out conf\server.key
in (v eni vrstici)
bin\openssl req -new -key conf\server.key -out conf\server.csr \ -config conf\openssl.cnf
in nato (v eni vrstici)
bin\openssl x509 -in conf\server.csr -out conf\server.crt
-req -signkey conf\server.key -days 4000
S tem ustvarite certifikat, ki bo potekel čez 4000 dni. Nato vpišite (v eni vrstici) še:
bin\openssl x509 -in conf\server.cert -out conf\server.der.crt
-outform DER
Ti ukazi ustvarijo nekaj datotek v konfiguracijski mapi (conf) strežnika Apache (server.der.crt, server.csr, server.key, .rnd, privkey.pem, server.cert).
Ponovno zaženite storitev Apache.
Usmerite vaš spletni brskalnik na https://servername/svn/project ...
Če dostop do strežnika zavarujete s protokolom SSL in uporabite avtentikacijo z domeno Windows, boste ugotovili, da brskanje po skladiščih z Internet Explorerjem ne deluje več. Ne skrbite - samo Internet Explorer ni sposoben izvesti avtentikacije. Ostali brskalniki tega problema nimajo, TortoiseSVN in ostali odjemalci za Subversion še vedno lahko izvajajo avtentikacijo.
Če še vedno želite uporabljati Internet Explorer za brskanje po skladišču, lahko:
v konfiguracijski datoteki Apache definirate ločen ukaz <Location /path> in dodate vrstico SSPIBasicPreferred On. To omogoči avtentikacijo preko Internet Explorerja, vendar pa ostali brskalniki in odjemalci za Subversion ne bodo mogli izvajati avtentikacije na tej lokaciji.
Ponudite tudi brskanje preko neenkriptirane avtentikacije (brez SSL). Začuda IE nima nobenih težav z avtentikacijo, če povezava ni zaščitena z SSL.
Pri "standardni" namestitvi SSL se v Apachejevem virtualnem gostitelju pogosto nahaja naslednji stavek:
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
Obstajajo (so obstajali?) dobri razlogi za takšno konfiguracijo, poglejte na http://www.modssl.org/docs/2.8/ssl_faq.html#ToC49 Toda če želite uporabiti avtentikacijo NTLM, morate uporabiti opcijo keepalive. Če odkomentirate celoten blok SetEnvIf, boste lahko uporabljali avtentikacijo IE z avtentikacijo sistema Windows preko protokola SSL in strežnika Apache na sistemu WIN32 z vključenim modulom mod_auth_sspi.
Če ste nastavili protokol SSL, da bi bili dostopi do skladišč bolj varni, onemogočite navaden - ne-SSL (http) dostop in dovolite le dostop https. To naredite tako, da dodate nov ukaz v Subversion blok <Location>: SSLRequireSSL.
Primer bloka <Location> izgleda takole:
<Location /svn> DAV svn SVNParentPath D:\SVN SSLRequireSSL AuthType Basic AuthName "Skladišča Subversion" AuthUserFile passwd #AuthzSVNAccessFile svnaccessfile Require valid-user </Location>
Prispevek je na dopisni seznam poslal Nigel Green. Hvala!
V določenih primerih morate na enem strežniku ustvariti dva navidezna gostitelja SSL: prvega za javni dostop dostop preko interneta brez zahteve po certifikatu, drugega za varen dostop s certifikatom, ki poganja strežnik Subversion.
Če odseku per-server v konfiguraciji strežnika Apache (n. pr. izven blokov VirtualHost in Directory) dodate ukaz SSLVerifyClient Optional, strežnik prisilite, da ob prvem kontaktu v načinu SSL zahteva certifikat. Zaradi napake v modulu mod_ssl je pomembno certifikat zatevati na tem mestu, kajti stvar ob ponovnem vzpostavaljnju poveze SSL ne deluje.
Zagato rešimo tako, da dodano naslednji ukaz navideznemu gostitelju, ki ga želimo uporabljati za Subversion:
SSLRequire %{SSL_CLIENT_VERIFY} eq "SUCCESS"
S tem dostop do mape dovolimo le uporabnjikom, ki so uporabili veljaven certifikat.
Za zakljkuček poglejmo pomembne dele konfiguracijske datoteke strežnika Apache:
SSLVerifyClient Optional
### Navidezni gostitelj za JAVEN dostop
### (ne zahteva certifikata)
<VirtualHost 127.0.0.1:443>
<Directory "potdokorenskemapezajavnidstop">
</Directory>
</VirtualHost>
### Navidezni gostitelj za SUBVERSION
### (zahteva certifikat)
<VirtualHost 127.0.0.1:443>
<Directory "korenska mapa za subversion">
SSLRequire %{SSL_CLIENT_VERIFY} eq "SUCCESS"
</Directory>
<Location /svn>
DAV svn
SVNParentPath /potdoskladišča
</Location>
</VirtualHost>