Setup / Configure phpGroupWare

The config file

Copy the header.inc.php.sample file to header.inc.php and edit the file, following the directions in the comments.

Create database in MySQL

An empty database will be needed for phpGroupWare. Here are the instructions for doing so with MySQL. First create the database:

mysqladmin create phpgroupware -p

Then login to the mysql:

mysql -p

Finally grant the needed security rights:

grant all on phpgroupware.* to phpgroupware@localhost identified by "some_password";

Create database in PostreSQL

An empty database will be needed for phpGroupWare. Here are the instructions for doing so with PostgreSQL. Create the database:

postmaster -i -D /home/[username]/[dataDir]

You will probably need to review PostgreSQL documentation for futher details.

The Setup Program

Then point your browser to phpgroupware/setup/ which will create (or upgrade) the database tables. You wil be asked to login, using the password set in header.inc.php. Setup will attempt to determine what version of the phpGroupWare database you have installed, and upgrade to the most recent version.

NoteNote
 

The developers are concentrating on getting the beta working, and have not spent a great deal of time building upgrade scripts from the alpha versions of phpGroupWare. You are advised to backup your existing alpha database before running the setup script to avoid problems!

If you get no error messages, continue on to phpgroupware/setup/config.php to configure phpGroupWare to your system.

If you are using the email system you will need to create a temporary directory where file uploads will be stored. For security reasons, you should chown nobody.nobody and chmod 700 to that directory. Depending on your system configuration. Default installs of Apache normally run as the user nobody. You may need your system administrator to do this for you if you do not have root access.

If you do not have access to root, create this file and run it.

?php
if (mkdir("/path/to/temp/directory",0700)) {
echo "Directory created successfully";
} else {
echo "Error creating directory";
}
?
      

The phpGroupWare Daemon

If you have access to cron, you may want to setup the files in the cron directory.

stalesessions.pl - There are 2 reasons for this file.

This file is not required, you can simply disable cron_apps in the admin -> applications section to clean out the sessions table during login and logout

stale_uploads.pl - This will delete file attachments for messages that where not completed. If a users browser crashes, Internet connection dies, etc, their files will sit there forever unless deleted. You could add a few lines to logout.php that will look in the temp directory for any stale uploads and delete them. But, once again, it becomes a performance issue.