28/8/99 Quick Installation Guide ------------------------- Linux/Unix system ------------------ (Assumes some knowlede of Apache Configuration files and the workings of htaccess files, As well as some knowledge of mysql or an equivalent) 1/ untar the source file eg tar xvf timesheeting.tar 2/ change to the newly created directory cd timesheeting 3/ Create a database for use by the system eg for mysql mysqladmin -uroot -p create 4/ Set up access privileges for the new database in mysql involves editing the tables in the mysql database and reloading the privleges (in more detail later) 5/ Pipe the timedb.sql file into the database to create the needed table and default values for mysql mysql -u -p < timedb.sql 6/ Decide where the system is going to live eg /usr/local/www/timesheet And shift the cgi-bin dir and the htdocs dir to there 7/ Edit the Apache conf file to either make a virtual host, or make these dirs your document root, and cgi-bin dir Example virtual host ServerAdmin webmaster@kyour.domain DocumentRoot /usr/local/www/timesheet/htdocs ServerName timesheet.your.domain ScriptAlias /cgi-bin/ /usr/local/www/timesheet/cgi-bin/ ErrorLog logs/timesheet.your.domain-error_log TransferLog logs/timesheet.your.domain-access_log 8/ Edit the file cgi-bin/Time/Sheeting.pm Find this bit of code sub TimeConnect { #edit this section to set up database connections my $hostname='localhost'; my $database='jobs_dbase'; my $user='Username'; my $pass='Password'; my $dbh=DBI->connect("DBI:mysql:$database:$hostname",'Username','Password'); return $dbh; } Unless you are running the database on a different machine to your webserver you can leave the hostname as localhost. Change $database to be the name of your newly created database, and $user and $pass to be the username and password of the user who has access to this database. Also edit sub topinc { my $inc = '/usr/local/www/ts/htdocs/includes/time_top.inc'; return $inc; } sub botinc { my $inc='/usr/local/www/ts/htdocs/includes/time_bottom.inc'; return $inc; } make the $inc variables point to the directory structure you choose in step 6 eg my $inc='/usr/local/www/timesheet/htdocs/includes/time_bottom.inc'; 9/ Finally set up the Apache access to files to restrict authorised users to the site. Make an entry for each person who you wish to have access to the site, as the timesheeting system makes user of the REMOTE_USER env variable to determine who is using it. Your .htaccess file should look similair to this AuthUserFile /usr/local/www/timesheet/.htpass AuthGroupFile /usr/local/www/timesheet/.htgroup AuthName TimeSheet AuthType Basic require group Time require group Time And should be placed in the cgi-bin and htdocs dirs 10/ HUP apache Thats it, you should now be able to look at http://timesheet.your.domain And start using the system Please now read docs/Customise.txt for information on how to change colours, menu bars etc. And read docs/Administration.txt about how to set up an administrator for the system