######################################################### # # # Installation Guide for ScheduleOnline 3.x.x # # with MySQL support (Unix) # # # # intranet@scheduleonline.com # # 12/19/2004 # ######################################################### Note: - Before you start any daemon, your clock needs to be changed to GMT in order for the code to handle different timezones around the world. (hint: sh$ TZ=GMT; export TZ) Files included: INSTALL.OS This file SOserv_mysql_3.x.x.tar.gz ScheduleOnline code for MySQL 3.xx crso3_mysqltabs.sql SQL script to create MySQL tables #========================= # System requirements #========================= # MySQL Installation - Required disk space: Datafiles (initial) 25 Mb Web 50 Mb (plus space for access/error logs) #========================== # Software requirements #========================== Here's the dependency overview: /-- Zend Loader / / /-- tiff-v3.x / /-- pdflib 3.x --/ /-- php 4.x --/ \ Apache 1.3.x -/ \ \-- libjpeg-6b-devel \ \-- gd 1.8.x \-- MySQL 3.x #================================= # Installation and Configuration #================================= Note: In this document, "$srcdir" refers to a mounted ScheduleOnline CD-ROM or the directory where you extracted ScheduleOnline tarball. For Unix users (assuming sh shell), You can put $srcdir in your shell environment to make your life easier. For example, after you mounted ScheduleOnline CD-ROM, you would do: sh$ srcdir=/mnt/cdrom sh$ export srcdir - Make sure you're root. - Install MySQL Note: MySQL binaries can be downloaded from ScheduleOnline ftp site @ftp.scheduleonline.com/pub/ Or http://www.mysql.com/downloads (recommended version: 3.23.33) # upzip and untar MySQL gunzip mysql-3.xx-xxxx-gnu-xxx.tar.gz tar -xvf mysql-3.xx-xxxx-gnu-xxx.tar # Move MySQL to the desired install_dir mv mysql-3.xx-xxxx-gnu-xxx /path/to/mysql cd /path/to/mysql # Setup MySQL initial database # to create initial system database ./scripts/mysql_install_db # to start mysql daemon ./bin/safe_mysqld & # to create ScheduleOnline database ./bin/mysql < $srcdir/eSchedule/etc/crso3_mysqltabs.sql -u root - Make sure your path and LD_LIBRARY_PATH includes proper directories: PATH=.:/usr/local/bin:/usr/sbin:/usr/bin LD_LIBRARY_PATH=/usr/local/lib:/path/to/mysql/lib export PATH LD_LIBRARY_PATH - Compile and install the following libraries (in many cases: configure, make, and make install): the following source codes can be downloaded from ScheduleOnline ftp site @ftp.scheduleonline.com/pub gd-1.8.3 (no configure, just make and make install) tiff-v3.5.5 pdflib-3.0 lynx-2.8.3 (also download apache_1.3.xx if you want to run apache as your webserver) - Download /pub//ZendOptimizer_1.0.0 #---------------------- # Apache/PHP on Linux #---------------------- 1. Upzip and untar apache: gunzip apache_1.3.x.tar.gz tar -xvf apache_1.3.x.tar 2. configure apache once: cd apache_1.3.x ./configure --prefix=/path/to/apache_install 3. Unzip and untar PHP: cd .. gunzip php-4.x.x.tar.gz tar -xvf php-4.x.x.tar 4. compile and install php: cd php-4.x.x ./configure \ --with-apache=/path/to/apachesource \ --with-tiff-lib=/usr/local \ --with-pdflib=/usr/local \ --with-gd=/usr/local \ --disable-debug \ --enable-track-vars \ --enable-libgcc make make install 5. create php config file: cp php.ini-dist /usr/local/lib/php.ini Note: You probably want to change the default max_upload file size to your preference ( default is 2 Mb ) 6. compile and install apache: cd ../apache_1.3.x ./configure \ --prefix=/path/to/apache \ --with-perl=/usr/bin/perl \ --activate-module=src/modules/php4/libphp4.a make make install 7. Edit /path/to/apache/conf/httpd.conf and update your servername: ServerName add the following lines: AddType application/x-httpd-php .php3 AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps #============================================================= # Installing and Configuring ScheduleOnline and ZendOptimizer #============================================================= 1. Add Zend Optimizer: cd $src tar -xvf ZendOptimizer-1.0.0-PHP_4.x.x-.tar mkdir -p /usr/local/Zend/lib/ cp $srcdir/ZendOptimizer-1.0.0-PHP_4.x.x-/ZendOptimizer.so /usr/local/Zend/lib/ add the following line to /usr/local/lib/php.ini zend_optimizer.optimization_level=15 zend_extension="/usr/local/Zend/lib/ZendOptimizer.so" 2. Uncompress ScheduleOnline tarball: # Copy ScheduleOnline scripts to web_document_root # (Apache default: /path/to/apache/htdocs, Netscape default: /path/to/netscape/suitespot/docs) cp $srcdir/SOserv_mysql_3.x.x /path/to/web_document_root cd /path/to/web_document_root gunzip SOserv_mysql_3.x.x.tar.gz tar -xvf SOserv_mysql_3.x.x.tar chown -R nobody eSchedule 3. Start up Apache LD_LIBRARY_PATH=/usr/local/lib export LD_LIBRARY_PATH /path/to/apache/bin/apachectl start 4. Go to http://your_webserver/eSchedule/etc/setup.php and complete server configuration. #========================= # Starting up your site #========================= - Start up MySQL cd /path/to/mysql ./bin/safe_mysqld & - Start up reminder trigger (You need to have "lynx" browser installed) /path/to/web_document_root/eSchedule/etc/mysql_trigger.sh & - Start up Apache LD_LIBRARY_PATH=/usr/local/lib export LD_LIBRARY_PATH /path/to/apache/bin/apachectl start - The server is now up and running, simply go to http:///eSchedule/ScheduleOnline and use the following login combination. user: admin@localhost passwd: admin You can change password through "Preferences" and/or add new person through "Admin." If you have furthur questions or comments please email intranet@scheduleonline.com Thank you for your support, ScheduleOnline staff intranet@scheduleonline.com