Problem bei Agendav Installation

  • Hallo,

    da ich mir nicht sicher war, wo das Thema hingehört (Server oder Allgemein) habe ich es hier platziert und bitte ggf. um Verschiebung, falls ihr es anders seht.
    Ich habe ein großes Problem mit der Installation von Agendav 2.0.0 beta2. Ich habe mich an die Installationsanleitung von der Homepage von Agendav gehalten aber bekomme es nicht zum laufen.

    Ich komme bis zum Punkt bei dem man den Apache vhost und die Rewrite-Funktion einstellen muß. Da ich aber lighttpd verwende, muß ich das anders lösen. Das ist mir bisher aufgrund mangelnder Kenntnis und Erfahrung nicht gelungen.

    Folgendes setting liegt bei mir vor:
    - Webserver = lighttpd
    - Kalenderserver = baikal
    - Dyndns = agendav.dyndnsanbieter.de (root = /var/www/agendav-2.0.0-beta2/web/public) und xxx.dyndnsanbieter.de (root = /var/www/)

    Die lighttpd.conf sieht aktuell so aus (ihr seht, ich habe mich bereits am Rewrite ausprobiert). Den vhost realisiere ich über die mysql_mod_vhost Funktion. Hier habe ich eine Datenbank erstellt, die unter den beiden Dyndns URLs die jeweiligen root-Verzeichnisse abgelegt hat:

    Ich komme aktuell mit dem Browser bis zum Anmeldefenster von Agendav. Nach der Eingabe von Benutzer und Passwort kommt dann entweder eine weiße Seite oder die Meldung "interner Server-Fehler". Die log Datei unter /var/www/agendav-2.0.0-beta2/web/var/log gibt folgendes aus:

    Code
    [2016-10-16 12:58:06] myapp.CRITICAL: AgenDAV\Exception\ConnectionProblem: cURL error 7: Failed to connect to xxx.dyndnsanbieter.de port 80: Connection timed out (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) (uncaught exception) at /var/www/agendav-2.0.0-beta2/web/src/Http/Client.php line 184 {"exception":"[object] (AgenDAV\\Exception\\ConnectionProblem(code: 0): cURL error 7: Failed to connect to xxx.dyndnsanbieter.de port 80: Connection timed out (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) at /var/www/agendav-2.0.0-beta2/web/src/Http/Client.php:184)"} []
    [2016-10-16 13:21:17] myapp.ERROR: Symfony\Component\HttpKernel\Exception\HttpException: Invalid CSRF token (uncaught exception) at /var/www/agendav-2.0.0-beta2/web/vendor/silex/silex/src/Silex/Application.php line 400 {"exception":"[object] (Symfony\\Component\\HttpKernel\\Exception\\HttpException(code: 0): Invalid CSRF token at /var/www/agendav-2.0.0-beta2/web/vendor/silex/silex/src/Silex/Application.php:400)"} []
    [2016-10-16 13:23:54] myapp.CRITICAL: AgenDAV\Exception\ConnectionProblem: cURL error 7: Failed to connect to xxx.dyndnsanbieter.de port 80: Connection timed out (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) (uncaught exception) at /var/www/agendav-2.0.0-beta2/web/src/Http/Client.php line 184 {"exception":"[object] (AgenDAV\\Exception\\ConnectionProblem(code: 0): cURL error 7: Failed to connect to xxx.dyndnsanbieter.de port 80: Connection timed out (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) at /var/www/agendav-2.0.0-beta2/web/src/Http/Client.php:184)"} []

    Daraus geht für mich hervor, daß der Client vergeblich versucht den Server (im falschen root-Verzeichnis, da es sich um das allgemeine und nicht das für agendav handelt) über Port 80 zu erreichen. Ich habe lighttpd allerdings mit SSL-Verschlüselung versehen. Und das Problem kann ich nicht alleine lösen. Ich habe bereits alles versucht.

    Meine Probleme sind also folgende (und vielleicht noch ein paar unbekannte):
    - keine Ahnung, wie ich ein richtiges rewrite hinbekomme, das die Funktionen aus der Anleitung erfüllt
    - Client versucht es über Port 80 soll aber über Port 443 ran

    Falls ihr noch mehr Logs benötigt, erstelle ich diese logischerweise gerne.
    Besten Dank im Voraus für Eure Hilfe.

    Gruß mauswurstgrille


  • Folgendes setting liegt bei mir vor:
    - Webserver = lighttpd
    - Kalenderserver = baikal
    - Dyndns = agendav.dyndnsanbieter.de (root = /var/www/agendav-2.0.0-beta2/web/public) und xxx.dyndnsanbieter.de (root = /var/www/)


    Gruß mauswurstgrille

    Also genau genommen liegen hier 2 Installationen vor:

    - Baikal: Hast Du den Server komplett konfiguriert, heisst bekommst Du eine Antwort auf:
    https://dyndnsanbieter.de/baikal/cal.php bzw. ab Version 0.4.xxx
    https://dyndnsanbieter.de/baikal/html/dav.php ?

    Das bedeutet; du musst das oben lauffähig installiert haben (bei mir mittels Baikal 0.4.5 unter NGINX 1.6.2). Anders gesagt, kann der Baikal-Server auch in Honolulu stehen, nur das beides bei dir im Raspi stattfindet.

    Darauf setzt dann agendav auf, näheres steht hier:
    https://www.linuxfrickeln.de/howto-installa…ebian-8-jessie/

    Gruß Norbert

    Einmal editiert, zuletzt von MacNobi (16. Oktober 2016 um 20:34)

  • Hallo Norbert,

    der Pfad heißt bei mir: https://agendav.dyndnsanbieter.de/kalender/cal.php und liefert folgende Antwort:

    Code
    Mit dieser XML-Datei sind anscheinend keine Style-Informationen verknüpft. Nachfolgend wird die Baum-Ansicht des Dokuments angezeigt.
    
    
         <d:error><s:exception>Sabre\DAV\Exception\NotImplemented</s:exception><s:message>GET is only implemented on File objects</s:message><s:sabredav-version>1.8.7</s:sabredav-version></d:error>

    Ich habe bereits Kalender über Thunderbird eingefügt und bearbeitet. Baikal funktioniert. Jetzt möchte ich noch Agendav als Client übers Internet erreichbar haben.

    Diese Anleitung...

    Zitat

    Darauf setzt dann agendav auf, näheres steht hier:

    https://www.linuxfrickeln.de/howto-insta...-8-jessie/

    ... ist nichts anderes als die von mir initial gepostete Anleitung. Es ist also die Originalanleitung umgeschrieben bzw. übersetzt.
    Ich scheitere an der Rewrite-Regel von Apache nach lighttpd, da ich diesen Webserver verwende.

    Zitat aus von Dir gepostetem Artikel:

    Den Virtual Host habe ich hinbekommen. Aber am Rewrite scheitere ich (auch wenn ich gar nicht weiß, wozu man den in diesem Fall braucht).
    Kannst Du mir diesen von Apache nach lighttpd übersetzten?

    Besten Dank im Voraus.

  • Ich sehe da zunächst 2 Probleme:

    -> [2016-10-16 12:58:06] myapp.CRITICAL: AgenDAV\Exception\ConnectionProblem: cURL error 7: Failed to connect to xxx.dyndnsanbieter.de port 80:

    Das bedeutet AgenDAV versucht den Baikal unter dyndnsanbieter.de:80 zu finden. Wenn du dies aus Datenschutzgründen nicht verändert hast, existiert diese (Beispiel-)Adresse nicht.

    Ausserdem ist das so unnötig, da sich baikal und AgenDAV auf einer Maschine befinden. Besser ist nur AgenDAV auf 443 (SSL/TLS) laufen zulassen und dann intern nach localhost:80 umzuleiten.

    -> der Pfad heißt bei mir: https://agendav.dyndnsanbieter.de/kalender/cal.php und liefert folgende Antwort:
    <d:error><s:exception>Sabre\DAV\Exception\NotImplemented</s:exception><s:message>GET is only implemented on File objects</s:message><s:sabredav-version>1.8.7</s:sabredav-version></d:error>

    Die Antwort von Baikal sollte, nach User/Passwort so aussehen wie unten auf dem Bild. Ausserdem liegt Baikal mittlerweile mit der Version 3.1.3 von sabredav vor.

    Gruß Norbert

    Einmal editiert, zuletzt von MacNobi (17. Oktober 2016 um 02:24)

  • Zitat

    Das bedeutet AgenDAV versucht den Baikal unter dyndnsanbieter.de:80 zu finden. Wenn du dies aus Datenschutzgründen nicht verändert hast, existiert diese (Beispiel-)Adresse nicht.

    Das habe ich ja eingangs geschrieben, daß ich eine SSL-Verschlüsselung auf Port 443 verwende.

    Zitat

    Ich habe lighttpd allerdings mit SSL-Verschlüselung versehen.

    Zitat

    Ausserdem ist das so unnötig, da sich baikal und AgenDAV auf einer Maschine befinden. Besser ist nur AgenDAV auf 443 (SSL/TLS) laufen zulassen und dann intern nach localhost:80 umzuleiten.


    Der Webserver lighttpd ist auf Port 443 SSL verschlüsselt. Wie würde die von Dir beschriebene Lösung im Detail aussehen?

    Ich habe diese Anleitung für die Installation von Baikal benutzt. Was könnte Deiner Meinung nach schiefgelaufen sein? Wie kann ich es beheben?

  • Zitat

    Der Webserver lighttpd ist auf Port 443 SSL verschlüsselt. Wie würde die von Dir beschriebene Lösung im Detail aussehen?

    Der lighttpd soll ja bei Dir sowohl Baikal als auch AgenDAV bedienen. Genau genommen sollte die Verschlüsselung aber nur einmal vorgenommen werden, nämlich wenn Du (oder Berechtigte) aus dem Internet auf den AgenDAV zugreifen. Bei Deinem jetzigen setup würde AgenDAV wieder ins Internet gehen um sich mit Baikal zu verbinden. Der wiederum läuft aber ebenfalls unter lighttpd auf dem gleichen RasPi. Das heisst die Verschlüsselung wird nochmal durchlaufen.

    Ich würde unter lighttpd 2 vhosts installieren;

    - für AgenDAV mit SSL auf 443
    - für Baikal ohne SSL auf 80

    und dann localhost:80 als Ziel angeben.

    Zitat

    Was könnte Deiner Meinung nach schiefgelaufen sein? Wie kann ich es beheben?

    Baikal wird ja nicht installiert, sondern ist einen php-Sammlung. Die alte kannst Du einfach löschen

    Code
    cd /var/www
    sudo rm -R kalender
    
    
    # und lädst die aktuelle Version und dann weiter nach deiner Anleitung ab:
    
    
    wget https://github.com/fruux/Baikal/releases/download/0.4.6/baikal-0.4.6.zip


    Gruß Norbert

    Einmal editiert, zuletzt von MacNobi (20. Oktober 2016 um 16:08)

  • Noch eine Frage: Warum verwendest Du nicht infcloud statt AgendAV ?

    Läuft bei mir mit Baikal einwandfrei und Du hast auch gleich die Kontakte und ToDo-Liste (verwende ich auch für die Verwaltung meiner Lesezeichen) über das Web-Gui verfügbar.

    Ausserdem entfällt der Stress mit den 2 Datenbanken (je eine für Baikal und AgenDAV). Das laden dauert zwar etwas länger ( Pi 1B = 20sec. für 3 Kalender mit +- 3Monaten und ca. 190 Terminen), aber man kann das Fenster ja ständig geöffnet halten.

    Gruß Norbert

    Einmal editiert, zuletzt von MacNobi (21. Oktober 2016 um 11:25)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!