CalDav und CardDav Konfiguration für NC Unterverzeichnisse

Hallo, ich habe ein Problem mit der Konfiguration der Card und CalDav Einstellunge in Nextcloud. Lt. NC Interface liegt es :slight_smile:

  • Ihr Webserver ist nicht richtig konfiguriert um “/.well-known/caldav” aufzulösen. Weitere Informationen hierzu finden Sie in der Dokumentation.
  • Ihr Webserver ist nicht richtig konfiguriert um “/.well-known/carddav” aufzulösen. Weitere Informationen hierzu finden Sie in der Dokumentation.

was muss ich denn lt. https://docs.nextcloud.com/server/14/admin_manual/issues/general_troubleshooting.html#service-discovery nun genau ändern ? die .well-know einträge um die in dem genannten artikel erwhnte hinzufügen oder die alten well.known einträge gegen die neuen mit unterverzeichnis ersetzen ? welche URL muss ich dann im Client eingeben ?

das Fehler manual ist da verwirrend

mfg

in welchem Verzeichnis liegen deine Nextclouddaten

meine nextcloud installation liegt in /var/www/nextcloud

ich bin jetzt völlig verwirrd und weis gar nichts mehr, nichts funktioniert, weder die infos auf der next cloud help seite noch das hier : Weiterleitung mit htaccess funktioniert nicht

ich habe überall die redirect eingetragen ( /etc/apache2/sites-available/neextcloud, /etc/apache2/sites-available/default-ssl.conf, /etc/apache2/sites-available/000-default-le-ssl.conf , /etc/apache2/sites-available/000-default.conf, /var/www/nextcloud/.htaccess, /var/www/html/.htaccess )

ich weis nicht mehr was ich wo wie überhaupt noch eintragen soll …

ich habe nun alle datein wieder in den ursprungzustand versetzt da sich mit o.g. änderung der fehler nicht beheben lies

/etc/apache2/nextcloud.conf:

Alias /mycloud "/var/www/nextcloud/"

    <Directory /var/www/nextcloud/>
            Options +FollowSymlinks
            AllowOverride All

            <IfModule mod_dav.c>
                    Dav off
            </IfModule>

            SetEnv HOME /var/www/nextcloud
            SetEnv HTTPS_HOME /var/www/nextcloud
            Satisfy Any

            <IfModule mod_headers.c>
                    Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
            </IfModule>

    </Directory>

/var/www/nextcloud/.htaccess:

<IfModule mod_headers.c>
  <IfModule mod_setenvif.c>
    <IfModule mod_fcgid.c>
       SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
       RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
    </IfModule>
    <IfModule mod_proxy_fcgi.c>
       SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
    </IfModule>
  </IfModule>

  <IfModule mod_env.c>
    # Add security and privacy related headers
    Header set X-Content-Type-Options "nosniff"
    Header set X-XSS-Protection "1; mode=block"
    Header set X-Robots-Tag "none"
    Header set X-Download-Options "noopen"
    Header set X-Permitted-Cross-Domain-Policies "none"
    Header set Referrer-Policy "no-referrer"
    SetEnv modHeadersAvailable true
  </IfModule>

  # Add cache control for static resources
  <FilesMatch "\.(css|js|svg|gif)$">
    Header set Cache-Control "max-age=15778463"
  </FilesMatch>

  # Let browsers cache WOFF files for a week
  <FilesMatch "\.woff$">
    Header set Cache-Control "max-age=604800"
  </FilesMatch>
</IfModule>
<IfModule mod_php5.c>
  php_value upload_max_filesize 511M
  php_value post_max_size 511M
  php_value memory_limit 512M
  php_value mbstring.func_overload 0
  php_value always_populate_raw_post_data -1
  php_value default_charset 'UTF-8'
  php_value output_buffering 0
  <IfModule mod_env.c>
    SetEnv htaccessWorking true
  </IfModule>
</IfModule>
<IfModule mod_php7.c>
  php_value upload_max_filesize 511M
  php_value post_max_size 511M
  php_value memory_limit 512M
  php_value mbstring.func_overload 0
  php_value default_charset 'UTF-8'
  php_value output_buffering 0
  <IfModule mod_env.c>
    SetEnv htaccessWorking true
  </IfModule>
</IfModule>
<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{HTTP_USER_AGENT}  DavClnt
  RewriteRule ^$         /remote.php/webdav/          [L,R=302]
  RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
  RewriteRule ^\.well-known/host-meta /public.php?service=host-meta [QSA,L]
  RewriteRule ^\.well-known/host-meta\.json /public.php?service=host-meta-json [QSA,L]
  RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
  RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
  RewriteRule ^remote/(.*) remote.php [QSA,L]
  RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
  RewriteCond %{REQUEST_URI} !^/\.well-known/(acme-challenge|pki-validation)/.*
  RewriteRule ^(?:\.|autotest|occ|issue|indie|db_|console).* - [R=404,L] 
  
  # manually added for subfolders
  RewriteRule ^\.well-known/host-meta /nextcloud/public.php?service=host-meta [QSA,L]
  RewriteRule ^\.well-known/host-meta\.json /nextcloud/public.php?service=host-meta-json [QSA,L]
  RewriteRule ^\.well-known/webfinger /nextcloud/public.php?service=webfinger [QSA,L]
  RewriteRule ^\.well-known/carddav /nextcloud/remote.php/dav/ [R=301,L]
  RewriteRule ^\.well-known/caldav /nextcloud/remote.php/dav/ [R=301,L] 
  
</IfModule>
<IfModule mod_mime.c>
  AddType image/svg+xml svg svgz
  AddEncoding gzip svgz
</IfModule>
<IfModule mod_dir.c>
  DirectoryIndex index.php index.html
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
<IfModule pagespeed_module>
  ModPagespeed Off
</IfModule>
#### DO NOT CHANGE ANYTHING ABOVE THIS LINE ####

ErrorDocument 403 /mycloud/
ErrorDocument 404 /mycloud/

super nun hab ich noch fehlermeldung mehr :
Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, Ihren Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass Sie es aus dem Document-Root-Verzeichnis des Webservers herausverschieben.

es ist einfach nur noch zum k*****

Puhhh, kaputtgefummelt, nun alles mal wieder zurück auf los. Was für ein Websever ist das denn?

.htaccess fehler gefunden : hab wohl eine .htaccess datei zuviel gelöscht. habe nun in /etc/apache2/apache.conf die direktive für /var/www/ gesetzt :

<Directory />
        Options FollowSymLinks
        AllowOverride None
        Require all denied
</Directory>

<Directory /usr/share>
        AllowOverride None
        Require all granted
</Directory>

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

ist das eher ein sicherheitsrisiko ? kann ich die AllowOveride direktive auch in der conf datei für die entsprechende webseite setzen, als in /etc/apache/sites-available/nextcloud.conf setzen ?

apache infos ( OS ist ein debian 9 ):

ii  apache2                          2.4.25-3+deb9u6                             amd64        Apache HTTP Server
ii  apache2-bin                      2.4.25-3+deb9u6                             amd64        Apache HTTP Server (modules and other binary files)
ii  apache2-data                     2.4.25-3+deb9u6                             all          Apache HTTP Server (common files)
ii  apache2-doc                      2.4.25-3+deb9u6                             all          Apache HTTP Server (on-site documentation)
ii  apache2-utils                    2.4.25-3+deb9u6                             amd64        Apache HTTP Server (utility programs for web servers)
ii  libapache2-mod-php7.0            7.0.33-0+deb9u1                             amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  python-certbot-apache            0.28.0-1~bpo9+1                             all          transitional dummy package
ii  python3-certbot-apache           0.28.0-1~bpo9+1                             all          Apache plugin for Certbot

ich werd nun für heute schluss machen, produktives kommt nix mehr bei rum, morgen auf ein neues hoffentlich mit mehr erfolg.

in dem sinne danke und gn8 :wink:

Bei mir war das redirect oder rewrite Modul im Apache nicht aktiv, ist es bei die aktiv? Startest du den Webserver nach jeder Änderung neu?

ich bin nach der NC installationanleitung vorgegangen : https://docs.nextcloud.com/server/14/admin_manual/installation/source_installation.html#apache-web-server-configuration

alle module aktiviert :

for i in env dir mime headers rewrite ;do a2enmod $i;done
Module env already enabled
Module dir already enabled
Module mime already enabled
Module headers already enabled
Module rewrite already enabled

mid fcgi wüsste nicht das jemals konfiguriert zu haben ( btw. wie kann ich mir die aktivierten mods anzeigen lassen ? )

hab grad nochmal ein altes backup eingespielt , die kalender funktionen liefen auch unter NC 13 vom Mai lezten Jahres nicht mehr. NC eingerichtet habe ich anfang 2018 und da funktionierte der cal und carddav ableich mit Android, Sailfish Thunderbird und dem Gnome Kalender einwandfrei. Ist mir bisher nur nicht aufgefallen weil die TB Kalender mit offline funktion eingerichtet waren.

auch bei einer neu installation tritt der selbe redirection fehler auf. im englischen bereich wissen vllt mehr user eine lösung : NC v15 installation Webdav Error (.well-known redirection )

Ich kann leider nicht mehr weiter helfen, da ich mittlerweile NC nicht mehr in einem Unterverzeichnis betreibe sondern in einer Subdomain um __Host-Prefix zu umgehen.
Da ich mir die ganzen Linuxbefehle auch nicht merken kann, setze ich Webmin ein um zu sehen welche Module laufen und welche nicht.

wenigstens weis ich nun genau wo der Fehler liegt :wink:

Trotzdem Danke :wink:

Lösung : https://debianforum.de/forum/viewtopic.php?p=1194484#p1194484