Home News Bugs Downloads Docs Forum CVS Stats
Installation Guide
SiteForge is a web-based application which runs on a remote web server accessed from a web browser. SiteForge is written as an add-on to the Sitellite content management system, which uses the PHP scripting language atop an Apache web server, and the MySQL database for its storage.
Requirements
SiteForge requires the following software packages in order to run:
1) A Unix server such as Red Hat Linux or Mac OS X running xinetd (installed on both of the above by default). SiteForge also requires root access to interact with xinetd.
2) Apache 1.3 or newer
3) PHP 4.2 or newer (but not PHP5) installed as an Apache module (configure --with-apxs). If you want to allow for downloads larger than 2MB, you will also need to increase the values for max_upload_filesize and max_post_size in your php.ini file.
4) MySQL 3.23.32 or newer
5) Concurrent Versions System (CVS)
6) Sitellite CMS:
http://www.sitellite.org/index/sitellite-installation-guide
For more details on requirements 2, 3, 4, and 6 please see:
http://www.sitellite.org/index/requirements
Installation
1) Prerequisites
Install and configure Apache, MySQL, PHP, CVS, and Sitellite according to the requirements above. Note that Apache, MySQL, PHP, and CVS come pre-installed on many Unix operating systems. In this case, simply ensure that the default installation is compatible with the Sitellite installation guide:
http://www.sitellite.org/index/sitellite-installation-guide
a) Apache synopsis:
cd httpd-2.0.54
./configure --prefix=/usr/local/apache
make
su
(enter password)
make install
Note: Please follow the instructions included with Apache itself.
b) PHP synopsis:
cd php-4.4.0
./configure --prefix=/usr/local --with-apxs=/usr/local/apache/bin/apxs2
make
su
(enter password)
make install
Note: Please follow the instructions included with PHP itself.
c) MySQL -- please follow the instructions included with MySQL itself.
d) CVS synopsis:
cd cvs-1.12.12
./configure --prefix=/usr/local
make
su
(enter password)
make install
Note: Please follow the instructions included with CVS itself.
e) Sitellite
cd /usr/local/apache/htdocs
wget -q -O - http://www.sitellite.org/go-sitellite | sh
Note: Please follow the instructions in the Sitellite installation guide.
2) Install SiteForge Itself
a) Unpack the SiteForge add-on into the inc/app folder of Sitellite.
b) Install the MySQL database schema via the following command:
mysql -p -u USER DBNAME < inc/app/siteforge/install/install-mysql.sql
c) Install the Sitellite collection definitions:
cp inc/app/siteforge/install/*.php inc/app/cms/conf/collections/
d) Enable the SiteForge workflow service by logging into Sitellite and going to Control Panel > Admin > Workflow Services, selecting all of the SiteForge services listed, and clicking Save.
e) Make the inc/app/siteforge/data folder writeable by the web server:
chmod -R 777 inc/app/siteforge/data
f) Install the CVS management scripts into your /root/bin directory:
cp -R inc/app/siteforge/install/siteforge /root/bin/
g) Edit the CVS management file /root/bin/conf.php and the SiteForge file inc/app/siteforge/conf/properties.php to have the appropriate settings.
h) Add the CVS management scripts to your root user crontab so that it runs hourly:
su
(enter password)
crontab -e
Add the following line by pressing "i" for insert, pasting the line into the cron editor, then pressing Ctrl+c and entering ":wq".
0 * * * * /usr/local/bin/php -f /root/bin/siteforge/cron.php
Note that you may need to alter that line to reflect the actual location of PHP on your server. Type which php to find out the actual path.
3) SiteForge Configuration
Link to SiteForge or make it your site index page by logging into Sitellite and doing one or more of the following:
a) Edit your index page and set the Properties > External value to /index/siteforge-app.
b) Add a sidebar with the categories by setting its Properties > Alias value to siteforge/categories.
c) Add the following to the inc/app/sitemember/conf/properties.php file under the "member_services" setting:
'home' => array (
intl_get ('My Projects') => 'box:siteforge/my/projects',
),
'profile' => array (
intl_get ('Projects') => 'box:siteforge/my/profile',
)
d) Edit the inc/app/siteforge/conf/properties.php file for the correct name, admin_email, cvs_base and extras settings.
You should now have a running SiteForge-powered project hosting website that is fully automated. Everything else can be done through a web browser by going to your website with the path /index/siteforge-app.
4) Site Design
By default, SiteForge will be using the example templates from the default Sitellite installation. For information about customizing Sitellite to use your own design templates, take a look at the following documentation:
1. Sitellite Templating Course:
http://www.sitellite.org/courses/templates/index.html
2. Sitellite Tutorials (scroll down for templates):
http://www.sitellite.org/index/tutorials-app