GEARZ.de

All howtos are without any warranty.
Alle Howtos sind ohne jegliche Gewähr oder Garantie.



OS X.6 - Sharing iCal-Calendars without .me:

You can share your iCal-Calendars with Snow Leopards built-in apache and iCal, so you dont need a .me-account. The shared calendars are readonly then, so its not really a collaborating solution ...

Apache: /private/etc/apache2/httpd.conf

You need to enable the webdav (gratefully precompiled) on your local apache, so login as privileged user, open the Terminal and edit the following file with your preferred editor (e.g. pico):
$ sudo pico /private/etc/apache2/httpd.conf
Uncomment the following line:
Include /private/etc/apache2/extra/httpd-dav.conf
Save the file.

Apache - DAV-Options: /private/etc/apache2/extra/httpd-dav.conf

Edit the http-dav.conf:
$ sudo pico /private/etc/apache2/extra/httpd-dav.conf
Set the path to the DAV-database and the timeout:
DavLockDB "/private/var/dav/DAVLockDB"
Change the share to the local standard webserver-root:
Alias /iCal "/Library/WebServer/Documents/iCal"
<Directory "/Library/WebServer/Documents/iCal">
    Dav On
    Order Allow,Deny
    Allow from all
    AuthType Digest
    AuthName iCal
    AuthUserFile "/private/etc/apache2/dav.digest.passwd"
    AuthDigestProvider file
    <Limit GET>
        require valid-user
    </Limit>
</Directory>
Save the file.

DAV-Users:

Create the user for the share:
$ cd /private/etc/apache2/
$ sudo htdigest -c dav.digest.passwd iCal alice
Create other users:
$ sudo htdigest dav.digest.passwd iCal bob
$ sudo htdigest dav.digest.passwd iCal eve
...

Creating needed directories and files:

The DAV-database-directory and -file have to be created and the owner and group have to be the ones given in the httpd.conf (normally "_www"):
$ sudo mkdir /private/var/dav
$ sudo chown _www:_www /private/var/dav
$ sudo touch /private/var/dav/DAVLockDB
$ sudo chown _www:_www /private/var/dav/DAVLockDB

Create the iCal-folder and change the ownership:
$ sudo mkdir /Library/WebServer/Documents/iCal
$ sudo chown _www:_www /Library/WebServer/Documents/iCal

(Re)starting apache

If apache is not running enable "Web Sharing" in the System Preferences under Sharing.

If you already have apache up and running:
$ sudo apachectl restart

iCal: publishing and subscribing

Choose the calendar to publish, go to "Calendar" in the menubar and press "Publish". Choose "A private server" under "Publish on", type the Base Url like http://<computerName>/iCal/ and use your DAV-credentials. Choose the options you want for sharing, press "Publish" and the .ics-file will be created. Jot down the URL for the .ics-file or forward it via email.

Use this URL to subscribe to the published calendar on an other computer / account.