Page 1 of 3 123 LastLast
Results 1 to 10 of 23

Thread: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

  1. #1
    Join Date
    Mar 2005
    Beans
    492
    Distro
    Ubuntu 9.10 Karmic Koala

    HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    This tutorial works on Ubuntu and should work on Kubuntu as well as Xubuntu. However, we'll do all the text editing in nano (a console-based text editor) since it should be installed on all *buntus. For nano, after editing a file, to close it push CNTRL+X and it will ask you if you want to save and just respond accordingly.


    Getting Sunbird:
    Mozilla Sunbird is still in development so it may contains bugs, crash, or lost calendar data. You can download the latest version here:
    http://www.mozilla.org/projects/cale.../download.html

    The nice thing about it is that there is NO compiling needed. Just put the folder wherever you want and run the 'sunbird' file inside the folder... or better yet make a nice icon pointing to the 'sunbird' file on your desktop or panel.


    Getting a way to access the server:
    If one of the following apply to you, skip this section:
    1. You already have a hostname you can use to access the server you will be setting up.
    2. You are only going to use this server on your local network and your computer has a static IP (your computer always gets the same IP).
    3. You don't have a hostname and don't want one and you are assigned a static IP from your ISP.
    If you want to share your calendars/files over the internet, then you need a "permanent" way to get to your server since a dynamic IP from your ISP can change. To get a hostname and setup a script on your computer to update the hostname everytime your ISP changes your IP follow the tutorial here:
    http://ubuntuguide.org/wiki/Dapper#H...DynDNS_service

    If you are going to be only sharing your calendars/files over your local network, you need an IP assigned to you that is not always changing. To do this, log into the router on your LAN and tell it to assign the server you will be using the same IP (called assigning a Static IP).


    Installing the Apache Server:
    To install the Apache Server, open up a Terminal (Applications > Accessories > Terminal) or whatever way works for your desktop:

    Code:
    sudo apt-get install apache2
    Now, you have the option of changing the port your Apache Server runs on. By default it runs on port 80, which is fine if there is only one computer. But if you setup a router to forward all traffic for port 80 to one computer on your network... the internet on your other computers will go bye-bye. To change the port:

    Code:
    sudo nano /etc/apache2/ports.conf
    In the file add the following line, where "port" is whatever port you would like to use (e.g. Listen 9999) and then exit (CNTRL+X) and save:

    Code:
    Listen port
    NOTE: Make sure to forward traffic on this port to your server if you have a router!!!


    Enabling the WebDAV modules:
    To enable the WebDAV modules, open up a Terminal (Applications > Accessories > Terminal) or whatever way works for your desktop:

    Code:
    sudo a2enmod
    dav (enter)
    sudo a2enmod
    dav_fs (enter)

    Setting up the WebDAV folder and the user:
    This will make a WebDAV folder at: /var/www/davhome

    To create the folder, open up a Terminal (Applications > Accessories > Terminal) or whatever way works for your desktop:

    Code:
    mkdir /var/www/davhome
    chgrp www-data /var/www/davhome
    chmod 775 /var/www/davhome
    Next to create the user, input the following command changing the last "username" part of the command to the username you would like to use (obviously make a note of the username and password you create):
    Code:
    htpasswd -c /var/www/davhome/.DAVlogin username

    Tell Apache where the folder is and to use it:
    To tell Apache to use WebDAV, open up a Terminal (Applications > Accessories > Terminal) or whatever way works for your desktop:

    Code:
    sudo nano /etc/apache2/mods-enabled/dav_fs.conf
    Thanks to henriquemaia for the suggesting to edit this file instead of /etc/apache2/httpd.conf

    Paste the following into the file (make sure the Terminal window is selected and use the Paste command in the Edit menu (not CNTRL+V - nano won't recognize it):

    Change "username" (two instances) to the username you created above. Also, the DAVMinTimeout is optional... it just sets the how long Apache should lock the file after it is accessed... I don't use it and haven't had a problem, but then again I only have one computer accessing the calendar at any time.

    Code:
    DAVLockDB /tmp/DAVLock
    #DAVMinTimeout 600
    
    <Location /davhome/>
            Dav On
    
            AuthType Basic
            AuthName username
            AuthUserFile /var/www/davhome/.DAVlogin
    
            <LimitExcept OPTIONS>
                    Require user username
            </LimitExcept>
    </Location>
    Hopefully you didn't exit and save yet because you have some more options. With the way the file is setup above you will be prompted for a username/password everytime you read or save a file using WebDAV.

    If you don't want to be asked a password when you read a file change the first LimitExcept line to:

    Code:
    <LimitExcept GET OPTIONS>
    If you don't want to be asked a password when you save a file (write) change the first LimitExcept line to:

    Code:
    <LimitExcept PUT OPTIONS>
    If you don't want to be asked a password when reading or writing (not recommended unless you want to make the calendar completely public) change the first LimitExcept line to:

    Code:
    <LimitExcept GET PUT OPTIONS>
    Okay, now you can exit and save.


    Restart Apache
    This step is very important so that Apache recognizes the changes you made!

    Open up a Terminal (Applications > Accessories > Terminal) or whatever way works for your desktop:

    Code:
    sudo /etc/init.d/apache2 restart

    The address to the server:
    Now you can either create a new calendar in Sunbird and tell it to put it on your server or publish an existing local calendar to the WebDAV folder. Just go to the calendar tab in Sunbird and right-click in the list of calendars or right-click on an existing calendar in the list.

    The address format you would enter for the remote calendar is as follows:

    Code:
    http://server_ip_or_hostname:port_if_not_80/davhome/filename_for_calendar.ics

    Other Items to Note:

    If you place an exisiting calendar file directly in /var/www/davhome, you should change the group and the rights on this file as follows:

    Code:
    sudo chgrp www-data /var/www/davhome/filename_for_calendar.ics
    sudo chmod 644 /var/www/davhome/filename_for_calendar.ics
    Thanks to bnj for this information.


    If Sunbird does NOT create a new .ics file, do the following and point Sunbird to that file as if it is an existing calendar:

    Code:
    sudo touch /var/www/davhome/filename_for_calendar.ics
    sudo chgrp www-data /var/www/davhome/filename_for_calendar.ics
    sudo chmod 644 /var/www/davhome/filename_for_calendar.ics
    Thanks to NobodySpecial for this information.


    If I left anything out let me know and I'll add it, but that should be it.
    Last edited by audax321; September 3rd, 2006 at 01:24 AM.
    (\ /)
    (O.o)
    (> <)

    This is Bunny. Copy Bunny into your signature to help him on his way to world domination.

  2. #2
    Join Date
    Feb 2006
    Location
    Switzerland
    Beans
    15
    Distro
    Ubuntu 8.10 Intrepid Ibex

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    That is great! Thank you a hundred times for this tutorial. I followed it step by step and now I am happy.

    Two additions:
    • If you place an exisiting calendar file directly in your directory /var/www/davhome, you should change the group and the rights on this file just as you did for the directory davhome. That is:
      Code:
      sudo cp /paht/to/my/existing/calendar.ics /var/www/davhome/calendar.ics
      chgrp www-data /var/www/davhome/calendar.ics
      chmod 775 /var/www/davhome/calendar.ics
    • Sunbird, at its current version (0.3alpha1) is quite buggy. Lightning seems to work slightly better. Those intersted can also try KOrganizer.
    Last edited by bnj; March 30th, 2006 at 04:02 PM.

  3. #3
    Join Date
    Mar 2005
    Beans
    59

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    Thanks for the step-by-step tutorial. I'd done this long ago with debian, but hadn't tried again with ubuntu.

    I'm using Lightning and when I try to publish my calendar, I get "405 Method not allowed". It never asks for a username or password.

    My apache access log shows the "PUT" request from thunderbird, and the error log doesn't show anything unusual. What could I be doing wrong?

  4. #4
    Join Date
    Mar 2005
    Beans
    492
    Distro
    Ubuntu 9.10 Karmic Koala

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    Quote Originally Posted by Dromio
    Thanks for the step-by-step tutorial. I'd done this long ago with debian, but hadn't tried again with ubuntu.

    I'm using Lightning and when I try to publish my calendar, I get "405 Method not allowed". It never asks for a username or password.

    My apache access log shows the "PUT" request from thunderbird, and the error log doesn't show anything unusual. What could I be doing wrong?
    Well the good news is that if your apache server is showing the PUT request it's connecting properly. There are only two things that I can think of could be causing your problem:

    1. When you go to File > New > Calendar and create a new remote calendar, are you using the WebDAV protocol. I know the CalDAV protocal, for one won't work with the above how-to, and additionally has a bug that prevents it from displaying a username/password dialog.

    2. Is your URL formatted correctly (maybe it's accessing the Apache server, but not the davhome folder):
    http://<IP or hostname>ORT/davhome/calendar.ics

    I just tried it after downloading a fresh copy of thunderbird and installing the Lightning extension and didn't experience any of those problems. Double-check the file/folder permissions and make sure they have the correct owners and permissions.

    EDIT: Okay I reread your post and started thinking maybe it you were trying to publish an existing calendar to the server. But, again, when I tried it that way it worked fine.
    Last edited by audax321; April 1st, 2006 at 12:34 PM.
    (\ /)
    (O.o)
    (> <)

    This is Bunny. Copy Bunny into your signature to help him on his way to world domination.

  5. #5
    Join Date
    Apr 2005
    Location
    Sintra, Portugal
    Beans
    835

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    Quote Originally Posted by audax321
    Well the good news is that if your apache server is showing the PUT request it's connecting properly. There are only two things that I can think of could be causing your problem:

    1. When you go to File > New > Calendar and create a new remote calendar, are you using the WebDAV protocol. I know the CalDAV protocal, for one won't work with the above how-to, and additionally has a bug that prevents it from displaying a username/password dialog.

    2. Is your URL formatted correctly (maybe it's accessing the Apache server, but not the davhome folder):
    http://<IP or hostname>ORT/davhome/calendar.ics

    I just tried it after downloading a fresh copy of thunderbird and installing the Lightning extension and didn't experience any of those problems. Double-check the file/folder permissions and make sure they have the correct owners and permissions.

    EDIT: Okay I reread your post and started thinking maybe it you were trying to publish an existing calendar to the server. But, again, when I tried it that way it worked fine.
    Thanks for this HowTo. I got my dav working with this.

    Just a note: when Tell Apache where the folder is and to use it you should use the file /etc/apache2/mods-enabled/dav_fs.conf to do that. It works both ways, but this makes it easier to clear out modifications when you disable the module.

  6. #6
    Join Date
    Feb 2006
    Location
    USA
    Beans
    98

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    I used the Mozilla Sunbird client, but it didn't like the fact that no .ics file existed yet. So I did this:
    Code:
    sudo touch /var/www/davhome/calendar.ics
    sudo chmod 666 /var/www/davhome/calendar.ics
    Then directed Sunbird to the file /davhome/calendar.ics and all is well.

    And BIG thanks to audax321 for helping me get this going!!!

  7. #7
    Join Date
    Nov 2005
    Beans
    88

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    Does anyone know of some software that could run server-side and send out announcements via email, whether anything is running client-side or not?

  8. #8
    Join Date
    Feb 2006
    Beans
    238
    Distro
    Ubuntu 6.10 Edgy

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    I followed this thread and got the calendar to work. The only thing I had to differently was to chmod things 777. This is because my folder with the webserver on it is formatted as vfat. You can't chgrp vfat.

  9. #9
    Join Date
    Apr 2006
    Beans
    43

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    This instructions didn't work for me. My webdav is running fine (at least I can save documents in the folder using OpenOffice), but not lighting neither sunbird can create calendars. I created one myself following the "touch" way, but It didn't work. Any hint of how to search for a solution?

    UPDATE: I discovered that if I put just de url with no file when creating the calendar (http://192.0.0.97/davhome) it creates files ICS automatically for evey event; but when I restart the lighting all the events are gone from calendar (but the files are there)
    Last edited by enboig; February 20th, 2007 at 11:15 AM.

  10. #10
    Join Date
    Aug 2005
    Beans
    19
    Distro
    Ubuntu 9.10 Karmic Koala

    Re: HOW-TO: Set up a Remote Calendar using WebDAV for use with Mozilla Sunbird

    Howdy all,

    I am implementing a solution at my workplace that involves me setting up a webdav server. I found this tutorial, and I thought that I had found the jackpot What I discovered, that I can not for the life of me get this to work on a virtual hosts configuration. What I have is one server on a single static IP which is serving to the Internet. Employees who are offsite, need to be able to access the webdav server to gain access to their files and such. For some reason, according to my clients requirements, they want their employees to access their files by the address dav.company.com, which then points to the directory of /var/webdav on the filesystem.

    Any ideas appreciated.

    Cheers,

    Sprinker

Page 1 of 3 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •