Subversion über original Apache-Server von DS-107+

Status
Für weitere Antworten geschlossen.

Toscman

Benutzer
Mitglied seit
02. Jan 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hi,

habe hier mittlerweile viel gelesen und versucht mich in einigen Dingen schlau zu machen. Hat auch meistens geklappt, nur mit diesem Problem komme ich nicht weiter.

Ich möchte mein SVN über WEB ansprechbar machen. Dazu muss ich die beiden Module mod_dav_svn.so und mod_authz_svn.so in die httpd.conf laden.

Dazu kommen wohl dann noch einige Einstellungen betreffend des Ortes meines SVN und so.

Hat jemand ne Wiki-ähnliche Beschreibung, wie ich das implementieren kann?

Zwei Dinge sind dabei wichtig. Ich möchte nicht einen zweiten Apache installieren und ich muss gestehen, dass ich von linux so gut wie keine Ahnung habe.
SVN und IKPG installation hab ich nach Wiki gemacht.

Also bitte, wenn jemand weiß wie es geht, dann machts für nen echtenn Noob, plz! ;-)

Gruß Toscman
 

Beatnukem

Benutzer
Mitglied seit
16. Mrz 2008
Beiträge
17
Punkte für Reaktionen
0
Punkte
0
Also ich habe es nur mitnem zweiten apache geschafft, aber das war relativ einfach (habe mich auch erst gescheut nen zweiten apache zu installieren, geht aber echt einfach)

In meinem Beispiel liegt das Repository in '/volume1/svn/repository'

apache2 installieren
Rich (BBCode):
ipkg install apache

httpd.conf editieren (vi /opt/etc/apache2/httpd.conf)
da drin dann folgende Zeile eintragen (habe ich direkt vor die zeile DocumentRoot "/opt/share/www" eingetragen):
Rich (BBCode):
Include /opt/etc/apache2/conf.d/*.conf

außerdem noch den user unter welchem der apache läuft ändern (muss der selbe Nutzer sein, unter welchem der subversion Server läuft)
Rich (BBCode):
User svnUser
Group #-1

dann in dem Ordner /opt/etc/apache2/conf.d/ die datei mod_dav_svn.conf ändern:
Rich (BBCode):
<Location /svn>
   DAV svn
   SVNPath /volume1/svn/repository
   
   AuthType Basic
   AuthName "SVN"
   AuthUserFile /volume1/svn/repository/access/access.passwd
   Require valid-user
</Location>
Der Pfad <Location /svn> ist dann der Pfad über welchen du das Repository erreichst (in meinem Beispiel http://meineip/svn)
SVNPath ist der Pfad zu deinem Repository welches du über http erreichen willst)

jetzt musst Du nur noch Benutzer einpflegen:
Rich (BBCode):
htpasswd /volume1/svn/repository/access/access.passwd neuerusername
(musst natürlich vorher den ordner /volume1/svn/repository/access anlegen)

jetzt dem http-server neu starten
Rich (BBCode):
/opt/sbin/httpd -k restart
und sich hoffentlich freuen das es gefunzt hat :)

das ganze kannst du dann auch noch über ssl erreichbar machen, dazu kannst du dir den letzten eintrag im thread http://www.synology-forum.de/showthread.html?t=1632 angucken.

hoffe das hat etwas geholfen, greetz
 

Toscman

Benutzer
Mitglied seit
02. Jan 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Sorry, das ich mich erst jetzt und so spät melde.
Bin gerade im Examen und habe nur sehr sporadisch Zeit. ;-)
Habe mich gerade mal wieder durchs forum geblättert und dabei auf deine Antwort gestossen. Hab mich dann dazu durchgerungen, den Apache2 zu installieren und das scheint auch gefunzt zu haben.
Allerdings hänge ich jetzt bei deinem Schritt:

dann in dem Ordner /opt/etc/apache2/conf.d/ die datei mod_dav_svn.conf ändern:

Das Problem, in dem Ordner sind keine Dateien. Kann ich die noch über ipkg nachinstallieren oder muss ich die Downloaden und da reinschieben. Überhaupt habe ich die Vermutung, dass dort nicht einmal ein Hauch von einem Modul gelagert ist.

ipkg hat Apache2 nach /opt/etc/apache2/ installiert und die httpd habe ich auch entsprechend ändern können.

Vielleicht weiss einer Rat.

Toscman
 

Beatnukem

Benutzer
Mitglied seit
16. Mrz 2008
Beiträge
17
Punkte für Reaktionen
0
Punkte
0
Bin leider auch kein Linux-Guru, weiß auch net genau ob derApache diese Files mitinstalliert (ich dachte eigentlich das die "Standart-config-files" mitinstalliert werden, vlt hab ich mich auch vertan), aber Du kannst die Datei auch einfach selbst anlegen (vi /opt/etc/apache2/conf.d/mod_dav_svn.conf)

Inhalt der kompletten mod_dav_svn.conf:
Rich (BBCode):
LoadModule dav_svn_module libexec/mod_dav_svn.so
LoadModule authz_svn_module libexec/mod_authz_svn.so

<Location /svn>
   DAV svn
   SVNPath /volume1/svn/repository
   
   AuthType Basic
   AuthName "SVN"
   AuthUserFile /volume1/svn/repository/access/access.passwd
   Require valid-user
</Location>

Wichtig ist dass Du wie ich oben beschrieben habe die "Include /opt/etc/apache2/conf.d/*.conf" Zeile in der httpd.conf eingetragen hast.

Wenn Du dann den Apache neu startest siehst Du dann auch ob mod_dav_svn.so und mod_authz_svn.so geladen werden konnten (gibt ne Fehlermeldung falls nicht denk ich mal)

Hoffe das bringt Dich bissel weiter
 

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18
Verwirrt

Hallo,

hab auch seit einiger Zeit Subversion auf meiner DS-107+ laufen. WebSVN und Zugriff per svn:// im lokalen Netz funzt wunderbar. Soweit OK.

Jetzt wollte ich mal mit http://www.usvn.info/ sowie Zugriff von extern per http experimentieren, und dabei über das alte Problem gestolpert, dass beim Standard (User-)Apachen die Module mod_dav_svn.so und mod_authz_svn.so ja nicht dabei sind, und deswegen die Lösung hier mit dem 2. Apachen diskutiert wird.

Gibt es hier eigentlich was Neues?

Der 2. Apache läuft ja wohl auf einem anderen Port? Oder woher weiss die DS welcher Apache wofür zuständig ist?

Ich scheue mich momentan noch etwas vor der Installation des 2. Apachen.

Kann man nicht einfach die beiden fehlenden Module aus den ipkg extrahieren und den "Originalapachen" damit versorgen?

~:-\

Alexander
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Der 2. Apache läuft ja wohl auf einem anderen Port? Oder woher weiss die DS welcher Apache wofür zuständig ist?

Ich scheue mich momentan noch etwas vor der Installation des 2. Apachen.

Kann man nicht einfach die beiden fehlenden Module aus den ipkg extrahieren und den "Originalapachen" damit versorgen?
Die DS muss nicht wissen welcher Apache wofür zuständig ist. Anhand des verwendeten Users ist ja festgelegt welcher Apache antworten soll. Das geht nur wenn der andere Apache auf einem anderen Port läuft (oder auf einer anderen IP, wenn du mehrere Netzwerkkarten hast)
Die Idee mit dem extrahieren der Module aus dem ipkg Paket könnte sogar funzen. Das müsste man mal testen
 

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18
Hm, ich hab die beiden Kandidaten im ipk Archiv des SVNs gefunden und mal rüberkopiert. In meiner httpd.conf-user eingetragen und versucht den Apachen neu zu starten. Scheint nicht zu funktionieren:

Rich (BBCode):
diskstation> sh /usr/syno/etc.defaults/rc.d/S97apache-user.sh restart
/usr/syno/etc.defaults/rc.d/S97apache-user.sh: user httpd stopped
Start User Apache Server .....
httpd: Syntax error on line 480 of /usr/syno/apache/conf/httpd.conf: Cannot load /usr/syno/apache/modules/mod_dav_fs.so into server: /usr/syno/apache/modules/mod_dav_fs.so: undefined symbol: dav_hook_gather_propsets
/usr/syno/etc.defaults/rc.d/S97apache-user.sh: user httpd could not be started
diskstation>
Oder mach ich was grundlegendes falsch?

[Edit] Hab die Reiehnfolge mod_dav_fs.so und mod_dav.so geändert, dann startet der Apache. Allerdings kommt jetzt nur noich ne weisse Seite. Werde morgen mal weiter forschen

Alexander
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
[Edit] Hab die Reiehnfolge mod_dav_fs.so und mod_dav.so geändert, dann startet der Apache. Allerdings kommt jetzt nur noich ne weisse Seite. Werde morgen mal weiter forschen

Alexander
Ja die weisse Seite habe ich auch gerade erhalten. Keine meiner Webseiten war erreichbar solange ich die Konfig nicht zurückgeändert habe :confused:
 

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18
Ja, schade. Sobald ich die beiden SVN Module lade bleiben die Seiten weiss. Die beiden DAV Module, die vorher schin da waren scheinen OK zu sein. Aber die beiden SVN Module aus dem svn .ipk harmonisieren wohl nicht mit dem User Apachen :-(

Alexander
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ja, schade. Sobald ich die beiden SVN Module lade bleiben die Seiten weiss. Die beiden DAV Module, die vorher schin da waren scheinen OK zu sein. Aber die beiden SVN Module aus dem svn .ipk harmonisieren wohl nicht mit dem User Apachen :-(

Alexander
Der ipkg Apache ist 2.2.14 und der Default von Syno 2.2.13
 

Brian!

Benutzer
Mitglied seit
29. Mrz 2009
Beiträge
147
Punkte für Reaktionen
0
Punkte
0
Also auf meiner DS209+ läuft SVN (auch über HTML) seit über einem halben Jahr sehr erfolgreich nativ auf dem DS Apache...

Ich meine mich erinnern zu können, die mod_dav vom DS Apache genommen zu haben und die mod_dav_fs eben von der SVN Installation. Auch mit SVN 1.6.9 läuft bisher noch alles.

Das muss jetzt aber für die DS-107+ nicht zwangsläufig heißen das es dort genauso funktionieren muss, da ja andere Prozessoren verbaut sind.

Grüße,
Brian
 

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18
Ich meine mich erinnern zu können, die mod_dav vom DS Apache genommen zu haben und die mod_dav_fs eben von der SVN Installation. Auch mit SVN 1.6.9 läuft bisher noch alles.
Ähm, "mod_dav" und "mod_dav_fs" sind ja schon da, es fehlen lediglich "mod_dav_svn" und "mod_authz_svn" auf meiner DS-107+.

Heisst das jetzt, dass die bei Dir schin da waren, oder dass du die anderne Modula auch getauscht hast?

Ich hab mal den Synology supporet angedrahtet, mal sehn ob die sich angesprochen fühlen - ist ja eigentlich kein Support Fall...

Andere Frage: gibt es irgendwo ein Archiv alter IPKG Versionen. Ich hab mal nach "apache_2.2.13-1_arm.ipk" gegoogelt aber nur 9 schlechte Treffer erhalten.

Wo kommen die Pakete eigentlich her?

Alexander
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ähm, "mod_dav" und "mod_dav_fs" sind ja schon da, es fehlen lediglich "mod_dav_svn" und "mod_authz_svn" auf meiner DS-107+.
Bei mir waren mod_dav und mod_dav_fs bereits beim Syno Apache vorhanden. Die anderen zwei Module kommen von ipkg svn. Leider sehe ich nix anderes als eine weisse Seite. Habe auch schon probiert mod_dav und mod_dav_fs aus dem ipkg Apache zu holen. Gleiches Resultat, weisse Seite...
 

Brian!

Benutzer
Mitglied seit
29. Mrz 2009
Beiträge
147
Punkte für Reaktionen
0
Punkte
0
So, hab jetzt nochmal nach geschaut, hatte da ein wenig durcheinander geworfen :(... naja, ist ja auch schon ein paar Monate her ;)...

Meine Konfiguration (wie gesagt, auf der DS209+) sieht wie folgt aus:

Rich (BBCode):
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module /opt/libexec/mod_dav_svn.so
LoadModule authz_svn_module /opt/libexec/mod_authz_svn.so

Alias /svn "/[...]/svn/repos"
<Location /[...]/svn/>
	DAV svn
	
	# ParentPath: Several repositories may be hosted below
	SVNParentPath /[...]/svn/repos

	SVNListParentPath off
	
	SVNPathAuthz on
	AuthzSVNAccessFile /[...]/.htauthz

	AuthType Digest
	AuthName "Projects"
	AuthDigestProvider file
	AuthUserFile /[...]/.htdigest
	Require valid-user
</Location>
#enable SVN specific logging
CustomLog /[...]/svn.log "%t %u %{SVN-ACTION}e" env=SVN-ACTION

"[...]" steht für die jeweiligen absoluten oder relativen Pfade.

Die Konfiguraiton liegt in einem externen File das am ende von der httpd.conf-user per include eingebuden wird.

Die Module mod_dav_svn.so und mod_authz_svn.so sind, wie man am Ordnerpfad sehen kann, die Original svn IPKG files.

Hoffe es hilft irgendwie. :)
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich habe es mal mit deiner Config (sinngemäss) probiert. Leider immer noch ne weisse Seite. Auch bei allen meinen übrigen Webseiten nur noch weiss. Könntest du bei dir mal schauen, welche Apache Version du genau hast?
Code:
/usr/syno/apache/bin/httpd -v
 

Brian!

Benutzer
Mitglied seit
29. Mrz 2009
Beiträge
147
Punkte für Reaktionen
0
Punkte
0
Hmm... seltsam.

Also laut HTTP Header:
Rich (BBCode):
Apache/2.2.13 (Unix) mod_ssl/2.2.13 OpenSSL/0.9.8k PHP/5.2.10 DAV/2 SVN/1.6.9 mod_wsgi/3.1 Python/2.5.5

Und laut httpd -v:
Rich (BBCode):
Server version: Apache/2.2.13 (Unix)
Server built:   Jan 24 2010 01:47:09

Der Server Built ist wegen der aktuellen Beta der 24. Januar,
mit der vorherigen Version (bis 844) lief aber auch immer alles.
(Sollte wohl mal meine Sig. ändern :rolleyes:)
 

xelarep

Benutzer
Mitglied seit
17. Dez 2008
Beiträge
318
Punkte für Reaktionen
10
Punkte
18
Hallo,

habe gerade Antwort von Synology bekommen. Helfen können Sie wie erwartet in diesem speziellen Fall leider nicht, haben das ganze aber als feature request aufgenommen.

Alexander
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
@Brian
Dein Apache ist genau die gleiche Version wie bei mir auch (FW 0965). Allerdings ein späteres Build Date. Bei mir ist er aus dem November 2009
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat