[horde] CalDAV setup

Jan Schneider jan at horde.org
Fri Jan 26 18:30:49 UTC 2018


Zitat von Harlan <harlan.bloom at gmail.com>:

> On 01/26/2018 01:57 AM, Jan Schneider wrote:
>>
>> Zitat von Harlan <harlan.bloom at gmail.com>:
>>
>>> On 01/25/2018 02:20 PM, Jan Schneider wrote:
>>>>
>>>> Zitat von Harlan <harlan.bloom at gmail.com>:
>>>>
>>>>> On 01/25/2018 01:49 PM, Jan Schneider wrote:
>>>>>>
>>>>>> Zitat von Harlan <harlan.bloom at gmail.com>:
>>>>>>
>>>>>>> On 01/24/2018 11:25 AM, Grouchy Sysadmin wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>> On 01/24/2018 11:06 AM, Harlan wrote:
>>>>>>>>> I did forget to mention that I'm currently running Horde  
>>>>>>>>> 5.2.22 running on Debian Jessie.  It was installed using  
>>>>>>>>> pear, not from the debian packages.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 01/23/2018 04:18 PM, Harlan wrote:
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>>   I've been trying to get remote access to my calendars working.
>>>>>>>>>>
>>>>>>>>>>   If I go to this URL: https://www.mydomain.com/webmail/rpc/
>>>>>>>>>>
>>>>>>>>>>     I get a listing of "services" that Horde thinks are available:
>>>>>>>>>>
>>>>>>>>>> principals     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> calendars     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> addressbooks     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> kronolith     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> turba     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> nag     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> ansel     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> whups     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>> gollem     Collection 2018-01-23T21:37:56+00:00
>>>>>>>>>>
>>>>>>>>>>   However, when I click on the the link (name) for any of  
>>>>>>>>>> them, all I get is a 404/Not found error.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>   Obviously, something in my settings are not correct.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>   What do I need to change to make these work????
>>>>>>>>>>
>>>>>>>>>>   What specific settings files you do you need to see to  
>>>>>>>>>> help answer this question????
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>>
>>>>>>>>>> Harlan...
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Which web server are you using? Do you have rewriting  
>>>>>>>> configured and working? There should be an .htaccess file in  
>>>>>>>> /webmail/rpc/ 1b133ee07c80f3d01d9c10177d186c99d569acd2
>>>>>>>> for Apache servers.
>>>>>>> I run Apache.
>>>>>>>
>>>>>>> Here is my .htaccess file:
>>>>>>> # IMPORTANT: DO NOT EDIT THIS FILE!
>>>>>>> # It will be overwritten with any future upgrade.
>>>>>>>
>>>>>>> <IfModule authz_core_module>
>>>>>>>     Require all granted
>>>>>>> </IfModule>
>>>>>>> <IfModule !authz_core_module>
>>>>>>>     Allow from all
>>>>>>> </IfModule>
>>>>>>>
>>>>>>> <IfModule mod_rewrite.c>
>>>>>>>     RewriteEngine On
>>>>>>>     RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
>>>>>>>     RewriteRule .* -  
>>>>>>> [env=REDIRECT_HTTP_AUTHORIZATION:%{HTTP:Authorization}]
>>>>>>>     RewriteCond   %{REQUEST_FILENAME}  !-d
>>>>>>>     RewriteCond   %{REQUEST_FILENAME}  !-f
>>>>>>>     RewriteRule ^(.*)$ rampage.php [QSA,L]
>>>>>>>     RedirectPermanent /.well-known/caldav /webmail/rpc/
>>>>>>> </IfModule>
>>>>>>>
>>>>>>> With the addition you mentioned, some programs now say  
>>>>>>> everything is ok, except there is still no calendar, nor  
>>>>>>> anything else, available.  When I connect using a web browser,  
>>>>>>> still getting the same listing and still none of the links work.
>>>>>>>
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Harlan...
>>>>>>
>>>>>> Those are not to be consumed by the browser, but by CalDAV clients.
>>>>>>
>>>>> My CalDAV client isn't finding any of these either, especially  
>>>>> the calendars I have in my account.
>>>>
>>>> So what happens in those programs that you mentioned that say  
>>>> everything would be okay? What happens if you click on the  
>>>> "calendars" link with a browser?
>>>>
>>> In a web browser when I click on the calendars link, or any other  
>>> link that shows up, I get "
>>>
>>>
>>>  Not Found"
>>>
>>> The CalDAV client just says there is nothing to choose.
>>
>> Is this an error message from your web server or from sabre/dav?
>>
> This is from the web server.  The CalDAV client is saying that it  
> can't find any calendars.

This is not what I was trying to ask. You said, you got a Not Found  
error, I assume in the browser. Was this an error from Apache or from  
Sabre?

> I enabled DEBUG setting Logging and got these errors from the log file:
> Jan 26 11:40:53 mail HORDE: Setting sam inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting chora inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting luxor inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting klutz inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting jonah inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting hermes inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting kolab inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting passwd inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting agora inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting ulaform inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
> Jan 26 11:40:54 mail HORDE: Setting vilma inactive because the  
> fileroot does not exist or the application is not configured yet.  
> [pid 19784 on line 139 of  
> "/usr/share/php/Horde/Registry/Registryconfig.php"]
>
> However, it appears that fileroot is automatically set based on  
> webroot which is determined automatically also, if I understood what  
> I read in config/registry.php
>
> Here are the instances of fileroot that I found:
>
> root at mail:/var/www/html/webmail# find . -name "*.php" -exec grep -i  
> "fileroot" \{\} \; -print
>     if (!file_exists($registry->get('fileroot', $app))) {
> ./admin/phpshell.php
>     $path = $registry->get('fileroot', $app) . '/config';
> ./admin/config/diff.php
> if (file_exists($registry->get('fileroot', $app) . '/config/conf.bak.php')) {
> $path = $registry->get('fileroot', $app) . '/config';
> ./admin/config/config.php
>         $path = $registry->get('fileroot', $app) . '/config';
>         $path = $registry->get('fileroot', $app) . '/config';
>     $path = $registry->get('fileroot', $app) . '/config';
> ./admin/config/index.php
>         $path = $registry->get('fileroot', $app) . '/config';
> ./admin/config/scripts.php
>              * least the fileroot entry. */
>                     new  
> Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/',  
> $registry->get('fileroot', 'content') . '/lib/'));
> ./turba/lib/Application.php
>                     $GLOBALS['registry']->get('fileroot', 'content')  
> . '/lib/'
> ./turba/migration/10_turba_upgrade_categoriestotags.php
>         // the fileroot entry
>               $GLOBALS['registry']->get('fileroot', 'content') . '/lib/'));
> ./ansel/lib/Application.php
> $GLOBALS['injector']->getInstance('Horde_Autoloader')->addClassPathMapper(new Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/', $GLOBALS['registry']->get('fileroot', 'content') .  
> '/lib/'));
> ./ansel/migration/5_ansel_upgrade_categoriestotags.php
> $GLOBALS['injector']->getInstance('Horde_Autoloader')->addClassPathMapper(new Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/', $GLOBALS['registry']->get('fileroot', 'content') .  
> '/lib/'));
> ./ansel/migration/4_ansel_upgrade_tagstocontent.php
>         $filedir = $GLOBALS['registry']->get('fileroot');
> ./lib/Test.php
>          * the fileroot entry. */
>                 new  
> Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/',  
> $GLOBALS['registry']->get('fileroot', 'content') . '/lib/'));
> ./mnemo/lib/Application.php
>                     $GLOBALS['registry']->get('fileroot', 'content')  
> . '/lib/'
> ./mnemo/migration/6_mnemo_upgrade_categoriestotags.php
> $fileroot = ($module == 'admin')
>     ? $registry->get('fileroot') . '/admin'
>     : $registry->get('fileroot', $module);
> $fileroots = array(
>     $fileroot . '/locale/' . $language . '/',
>     $fileroot . '/locale/' . substr($language, 0, 2) . '/',
>     $fileroot . '/locale/en/'
> foreach ($fileroots as $val) {
> ./services/help/index.php
>          * the fileroot entry. */
>                 $GLOBALS['registry']->get('fileroot', 'content') . '/lib/'
> ./trean/lib/Application.php
>                 if (file_exists($registry->get('fileroot', $val) .  
> '/lib/Test.php')) {
> ./test.php
>         require_once $GLOBALS['registry']->get('fileroot', 'wicked')  
> . '/lib/Wicked.php';
> ./wicked/migration/4_wicked_single_revisions.php
>          * the fileroot entry. */
>                 new  
> Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/',  
> $GLOBALS['registry']->get('fileroot', 'content') . '/lib/'));
> ./nag/lib/Application.php
>                     $GLOBALS['registry']->get('fileroot', 'content')  
> . '/lib/'
> ./nag/migration/10_nag_upgrade_categoriestotags.php
>          * the fileroot entry. */
>                 new  
> Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/',  
> $GLOBALS['registry']->get('fileroot', 'content') . '/lib/'));
> ./kronolith/lib/Application.php
> $GLOBALS['injector']->getInstance('Horde_Autoloader')->addClassPathMapper(new Horde_Autoloader_ClassPathMapper_Prefix('/^Content_/', $GLOBALS['registry']->get('fileroot', 'content') .  
> '/lib/'));
> ./kronolith/migration/18_kronolith_upgrade_categoriestotags.php
>             if (file_exists($GLOBALS['registry']->get('fileroot', $a)) &&
> ./config/prefs.php
>  *   - fileroot: (string) The base filesystem path for the module's files.
> // directory (e.g. their fileroot/webroot will be automatically determined
> // by appending the application name to Horde's 'fileroot'/'webroot' setting.
> // every application's 'fileroot'/'webroot' settings.
> // $app_fileroot = __DIR__ . '../';
> ./config/registry.php



-- 
Jan Schneider
The Horde Project
https://www.horde.org/



More information about the horde mailing list