- Add the user `freeside' to your system.
- Add the freeside database to your database engine. (with MySQL) (with PostgreSQL)
- Allow the freeside user full access to the freeside database. (with MySQL) (with PostgreSQL)
- Unpack the tarball:
gunzip -c fs-x.y.z.tar.gz | tar xvf -
- Copy or link fs-x.y.z/site_perl to FS in your site_perl directory. (try `
perl -V
' if unsure) mkdir /usr/local/lib/site_perl/FS
cp fs-x.y.z/site_perl/* /usr/local/lib/site_perl/FS
or ln -s /full/path/to/fs-x.y.z/site_perl /usr/local/lib/site_perl/FS
- Copy or link fs-x.y.z/htdocs to your web server's document space.
mkdir /usr/local/apache/htdocs/freeside
cp -r fs-x.y.z/htdocs/* /usr/local/apache/htdocs/freeside
or ln -s /full/path/to/fs-x.y.z/htdocs /usr/local/apache/htdocs/freeside
- Restrict access to this web interface. (with Apache)
- Enable CGI execution for files with the `.cgi' extension. (with Apache)
- Set ownership and permissions for the web interface. The web interface needs to run as the freeside user - there are several ways to do this.
- Use Perl's setuid emulation: see the Security Bugs section of the perlsec manpage.
cd /usr/local/apache/htdocs/freeside
chown -R freeside .
chmod 4755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi
- Use Apache's suEXEC.
cd /usr/local/apache/htdocs/freeside
chown -R freeside .
chmod 755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi
- Use mod_perl. You should run a separate iteration of Apache[-SSL] as the freeside user. (Warning: The redirect method of CGI.pm 2.36 [as distributed with Perl 5.004_04] is broken under mod_perl. Downlaod the current version from CPAN.)
cd /usr/local/apache/htdocs/freeside
chown -R root .
chmod 755 browse/*.cgi edit/*.cgi edit/process/*.cgi misc/*.cgi misc/process/*.cgi search/*.cgi view/*.cgi
- Create the necessary configuration files.
- Create the `/usr/local/etc/freeside/counters.datasrc', and
`/usr/local/etc/freeside/export.datasrc' directories for each datasrc (owned by the freeside user).
- As the freeside user, run bin/fs-setup to create the database tables.