Most of this stuff came from John Simpson’s excellent resource at http://www.jms1.net/davical/server-setup.shtml. I had to tweak it and it took me a few hours. I think this CentOS Virtualmin spec will save you some time. Use it at your own risk, it works for me!

REMARK: Log in as root

# cd /usr/share

# wget ftp://195.220.108.108/linux/dag/redhat/el5/en/i386/dag/RPMS/perl-Module-Install-0.64-1.el5.rf.noarch.rpm
# wget http://dag.wieers.com/rpm/packages/perl-Test-Base/perl-Test-Base-0.54-1.el5.rf.noarch.rpm
# wget ftp://rpmfind.net/linux/sourceforge/r/rs/rscds/libawl-php-0.36-2.noarch.rpm
# wget http://dag.wieers.com/rpm/packages/perl-YAML-0.66-1.el5.rf.noarch.rpm
# wget ftp://rpmfind.net/linux/sourceforge/r/rs/rscds/davical-0.9.6.3-2.noarch.rpm

# rpm -ivh perl-Module-Install-0.64-1.el5.rf.noarch.rpm
# rpm -ivh perl-Test-Base-0.54-1.el5.rf.noarch.rpm
# rpm -ivh libawl-php-0.36-2.noarch.rpm
# rpm -ivh perl-YAML-0.66-1.el5.rf.noarch.rpm
# rpm -ivh davical-0.9.6.3-2.noarch.rpm

# cd /usr/share/davical/dba

# su postgres -c ./create-database.sh

REMARK: You will see some information scroll up the screen. Look for and preserve the following line:
REMARK: “The password for the ‘admin’ user has been set to ‘yinj4t1S'”

# cd /var/lib/pgsql/data
# cp pg_hba.conf pg_hba.conf.bak
# nano pg_hba.conf

REMARK: scroll down to the line that reads:
REMARK: “# TYPE DATABASE USER CIDR-ADDRESS METHOD “
REMARK: and below that line but above the other lines insert

local davical davical_app trust
local davical davical_dba trust

REMARK: exit nano by typing control-x:
ctrl^X

REMARK: Yes, save the modified buffer by typing “Y”
Y

# /etc/init.d/postgresql restart

# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

REMARK: Open a VIRTUALMIN window to your server
REMARK:
Navigate to Webmin/Servers/Apache Webserver
REMARK:
Select the “Global Configuration” tab
REMARK:
Click the “Edit Configuration Files” icon
REMARK:
Edit the /etc/httpd/conf/httpd.conf
REMARK:
OR
REMARK:
Simply type “nano /etc/httpd/conf/httpd.conf”

REMARK: Find the section of httpd.conf that looks like this:
REMARK:
# First, we configure the “default” to be a very restrictive set of
REMARK:
# features.
REMARK: #
REMARK:
<Directory />
REMARK:
Options FollowSymLinks
REMARK:
AllowOverride None
REMARK:
</Directory>
REMARK:
Skip a line and type the following:

# Inserted for Calendar Server functionality
<Directory “/usr/share/davical/htdocs”>
Order deny,allow
Allow from all
</Directory>

REMARK: If you are editing with Virtualmin/Webmin Click “Save”
REMARK: If you are editing with Virtualmin/Webmin Click “Apply Changes”
REMARK:
If you are editing with Virtualmin/Webmin Click “Stop Apache”
REMARK:
If you are editing with Virtualmin/Webmin Click “Start Apache”
REMARK:

REMARK:
If you are using nano, save the file, exit nano, and type

# /etc/init.d/httpd restart

REMARK: Using Virtualmin, select a domain which will be allowed access
REMARK:
to the calendar server. Click the “Aliases and Redirects” Icon
REMARK: In the “Document directory aliases” section, add
REMARK:
From: /cal To: /usr/share/davical/htdocs
REMARK:
Click “Save”
REMARK:
Click “Apply Changes”
REMARK:
Click “Stop Apache”
REMARK:
Click “Start Apache”
REMARK:

REMARK:
If you are using nano, save the file, exit nano, and type

# /etc/init.d/httpd restart

# cd /etc/davical
# nano your.domain.com-conf.php
<?php
$c->admin_email = ‘webmaster@domain.com’ ;
$c->system_name = ‘domain.com’ ;
$c->default_locale = ‘en_US.UTF-8’ ;
$c->pg_connect[] = ‘dbname=davical port=5432 user=davical_app’ ;
?>

REMARK: exit nano by typing control-x:
ctrl^X

REMARK: Yes, save the modified buffer by typing “Y”
Y

# cp /etc/php.ini /etc/php.ini.bak
# nano /etc/php.ini
REMARK: add the following line
include_path = “.:/php/includes:/usr/share/davical/inc:/usr/share/davical/htdocs:/usr/share/awl/inc”

REMARK: save the php.ini file and exit nano

# /etc/init.d/httpd restart

REMARK: Change admin pass by logging in with default pass at http://www.domain.com/cal/
REMARK:
create a user
REMARK: Depending on the client, You can now access your user’s calendar via a CalDAV client at:
REMARK:
http://www.domain.com/cal/caldav.php/username/home
REMARK:
OR
REMARK:
http://www.domain.com/cal/caldav.php/username

Tagged with:
 

3 Responses to “How I Got DAViCal Working Under a Vanilla CentOS VirtualMin Install”

  1. Anthony Lake says:

    Not yet, as this is the new blog. The old posts at University of Arizona have been removed but might be recycled soon. What did you have in mind?

    By the way, make sure you get the newest versions of those files I mentioned in the article.

  2. apache php says:

    Hey! Bookmarked it to my laptop:) Nice post.

Leave a Reply



Switch to our mobile site