Welcome to the home of the Caravel CMS
 Home  -  News  -  Download  -  Features  -  Documentation
Installing Caravel
 

Thanks for downloading the Caravel Content Management System...this file will help you install it.Depending on what you already have installed on your system, your installation may vary. Some of the software is specified as optional, but is required for full functionality of Caravel. Throughout this document, we will assume the presence of this optional software.

As of right now, Caravel only supports *nix platforms. There is no reason why Caravel would not run on other platforms, but no one has yet taken the time to figure out how to configure everything to do this. If you happen to get Caravel running on another platform we'd love to hear about it.You may notice this file is pretty long. This is because there is a lot of stuff that Caravel needs to have installed before it can work properly and some of this stuff is not easy to install. It is also because, in the hope that this can be a useful document, we've been pretty verbose throughout.

Throughout this document, we assume that the Caravel source is in the /usr/local/caravel directory. To obtain a copy of the Caravel source, go here or visit our repository on sourceforge. If you are interested in getting the latest code you can find out how to access our CVS repository here.


Sections
Required and Optional Software
Installation Instructions for Required and Optional Software
Postgres Conf Files
Pear Packages
Caravel Installation and Setup
Things to Note and Possible Problems


Required and Optional Software
The software required for Caravel is as follows:
* OpenLDAP >= 2.2.24
* Apache >= 1.3
* PHP >= 4.3.8 -- note that php 5 support is experimental
- Pear: XML_HTMLSax >= 2.1.2
- Pear: DB
- Pear: HTML_COMMON
- Pear: HTML_CSS

The following software is optional but highly reccommended:
* PostgreSQL >= 7.4 (Required for some Applications, Suggested (secure)
backend for Sessions)
* BerkeleyDB >= 4.3 (Suggested backend for OpenLDAP)
* Curl and Image Libraries (Required for some functionality)


Installation Instructions for Required and Optional Software
If you are currently using a linux distro like Gentoo or Redhat our suggestion is that you use their package management system to install these programs. Compiling all the packages from source is much more complicated and should only be attempted by advanced users who want to get the most out of their Caravel install. If you really want to compile these packages from source read this.

You should install the packages in the order that they are listed above. Once you have these packages installed there are a few Caravel specific modifications that you need to do to your conf files. The first is some changes to the postgres conf files to make sure that it will work with PHP and that it will do so securely. The other modification is to your ldap conf files. This is required for Caravel to work properly.

Postgres Conf Files
It appears that newer versions of PHP than 4.3.4 do not actually support connecting to Postgres through unix sockets. Thus, since we suggest running the latest version of PHP, you must turn on tcp/ip sockets for Postgres. You will not need to do anything else, as configuring PHP for unix sockets will work just fine. It just doesn't actually use them. To turn on tcp/ip connections to Postgres, edit /usr/local/pgsql/data/postgresql.conf and change tcpip_socket from 'false' to 'true'. If you can't find any mention of "tcpip_socket" then add the following line to the file:

tcpip_socket=true

Also, you will probably want to turn md5 passwords on. To do this follow the steps below as user postgres with postmaster running.

/usr/bin/psql template1

At the prompt, enter the following(where rootpassword is your desired password):

ALTER USER postgres with password 'rootpassword';

Finally, edit /usr/local/pgsql/data/pg_hba.conf and change "trust" to "md5" except on the localhost line. An example conf file is given below.

#pg_hba.conf
#caravel suggested conf

local all all trust
host all all 1.2.3.4 255.255.255.0 md5
host all all 127.0.0.1 255.0.0.0 md5

Pear Packages
There are four Pear packages that you need. Once you have installed PHP run the following commands to install them.

pear install DB
pear install XML_HTMLSax
pear install HTML_Common
pear install HTML_CSS

Caravel Installation and Setup
Congratulations! Assuming you've gotten everything working, you are ready to do the final setup for Caravel. It gets easier from here on out. Just like before we assume that caravel is installed in /usr/local/caravel.

RUN THE INSTALL.SH SCRIPT

First things first, you need to run the install.sh script located in the directory where you untarred Caravel. If for some reason you need to wipe your caravel install at a later date, you can run the script with the 'clean' option and it will revert your settings to the defaults. If you are concerned about what it is doing you might want to open it up and check it out.

Be sure to run the script as root and that Postgresql is running before you execute it. If you chose to install Postgresql on a different machine or to not install it, answer 'n' when it asks if you want to set up postgres.

COMPLETE THE ONLINE CONFIGURATION

Once the install.sh has completed successfully, you just need to go to your Caravel domain in a web browser to perform the final setup steps. Once this is complete, you should be able to go to your default-caravel site and begin using Caravel for what you were hoping to the whole time you've been installing things.

Things to Note and Possible Problems
There are lots and lots of potential problems people have during the install process. Most are due to other programs and not Caravel. If you've gotten most of the way through this and can access something provided by Caravel in a web browser then the first thing you should check when you encounter a problem is Apache's error_log file, probably in /usr/local/apache2/logs. Look at the bottom of it and it should provide some clues. Ignore all the php notices Caravel is generating. In general, actually, caravel throws a lot of warnings and notices. If you have a sane production environment this should be fine. We're working on reducing them.

Copyright © 2006 Caravel CMS
Page last modified 05/27/2008
Powered by Caravel CMS v3.4, Copyright © 2003-2014 Mennonite.net. All rights reserved.