X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fdocs%2Finstall.html;h=02572759eb99d6e3eabb7e4068dc2b6ec9e50a01;hp=db214161953fdb3974b89ccc3967c7e863cc6a1e;hb=a2b0b3e8500b08a5cf017c85693d9649853f8569;hpb=26a45c49727ef4505a2f1875aa7dd04be9bbdceb
diff --git a/httemplate/docs/install.html b/httemplate/docs/install.html
index db2141619..02572759e 100644
--- a/httemplate/docs/install.html
+++ b/httemplate/docs/install.html
@@ -3,55 +3,76 @@
Installation
+Note: Install Freeside on a firewalled, private server, not a public (web, RADIUS, etc.) server.
Before installing, you need:
- - Perl Don't enable experimental features like threads or the PerlIO abstraction layer.
+
- Perl, minimum version 5.005_03. (5.8.3 for the integrated RT ticketing)
- Apache (mod_ssl or Apache-SSL highly recommended)
- mod_perl (if compiling your own mod_perl, make sure you set the EVERYTHING=1 compile-time option)
- SSH (OpenSSH is recommended. SSH Communications Security commercial SSH version 3 has been reported incompatible with Freeside.)
- rsync
+
- Optional, enables typeset invoices: teTeX and Ghostscript (included with most distributions).
- A transactional database engine supported by Perl's DBI.
- - PostgreSQL (v7 or higher) is recommended.
-
- MySQL has been reported to work.
- MySQL's default MyISAM and ISAM table types are not supported. If you want to use MySQL, you must use one of the new transaction-safe table types such as BDB or InnoDB, and set it as the default table type when running fs-setup using the
--default-table-type=BDB
or --default-table-type=InnoDB
mysqld command-line option or by setting default-table-type=BDB
or --default-table-type=InnoDB
in the my.cnf option file.
+ - PostgreSQL is recommended (v7.2 or later, 7.4 or later recommended).
+
- MySQL is not currently supported. Developers intersted in maintaining MySQL support are welcome to ask on the -devel mailing list; many things work, but MySQL support needs a maintainer to update it for recent (and future) changes.
+
- - Perl modules (CPAN will query, download and build perl modules automatically)
+ Note: the above only applies to the database used by the Freeside software itself. Freeside can integrate with RADIUS and other servers running MySQL or any other DBI-supported database.
+
- Perl modules (CPAN will query, download and build perl modules automatically)
Install the Freeside distribution:
@@ -61,7 +82,7 @@ Install the Freeside distribution:
- with PostgreSQL:
-$ su postgres
+$ su postgres (pgsql on some distributions)
$ createuser -P freeside
Enter password for user "freeside":
Enter it again:
@@ -77,20 +98,19 @@ mysql> GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,ALTER,CREATE,DROP on freeside.* T
- Edit the top-level Makefile:
- - Set DATASOURCE to your DBI data source, for example, DBI:Pg:host=localhost;dbname=freeside for PostgresSQL or DBI:mysql:freeside for MySQL. See the DBI manpage and the manpage for your DBD for the exact syntax of your DBI data source.
+
- Set DATASOURCE to your DBI data source, for example, DBI:Pg:dbname=freeside for PostgresSQL or DBI:mysql:freeside for MySQL. See the DBI manpage and the manpage for your DBD for the exact syntax of your DBI data source.
- Set DB_PASSWORD to the freeside database user's password.
- Add the freeside database to your database engine:
-
-$ su
-# make create-database
- (or manually, with Postgres:)
-
+
+ - with Postgres:
+
$ su freeside
-$ createdb freeside
- (with MySQL:)
-
+$ createdb -E sql_ascii freeside
+ - with MySQL:
+
$ mysqladmin -u freeside -p create freeside
+
- Build and install the Perl modules:
$ make perl-modules
@@ -101,64 +121,61 @@ $ su
# make create-config
- Run a separate iteration of Apache[-SSL] with mod_perl enabled as the freeside user.
+
- Edit the Makefile and set TEMPLATE to asp or mason. Also set FREESIDE_DOCUMENT_ROOT.
+
- Run make install-docs.
- Apache::ASP | Mason |
+ Mason (recommended) | Apache::ASP (deprecated) |
-
- - Run make aspdocs
-
- Copy aspdocs/ to your web server's document space.
-
- Create a Global directory, such as /usr/local/etc/freeside/asp-global/:
-
-mkdir /usr/local/etc/freeside/asp-global/
-chown freeside /usr/local/etc/freeside/asp-global/
-
- - Copy htetc/global.asa to the Global directory:
-
-cp htetc/global.asa /usr/local/etc/freeside/asp-global/global.asa
-
- - Configure Apache for the Global directory and to execute .cgi files using Apache::ASP. For example:
+
+
+ - Configure Apache:
-<Directory /usr/local/apache/htdocs/freeside-asp>
-<Files ~ (\.cgi)>
-AddHandler perl-script .cgi
-PerlHandler Apache::ASP
+PerlModule HTML::Mason
+# your freeside docuemnt root
+<Directory /var/www/freeside>
+<Files ~ (\.cgi|\.html)>
+AddHandler perl-script .cgi .html
+PerlHandler HTML::Mason
</Files>
<Perl>
-$MLDBM::RemoveTaint = 1;
+require "/usr/local/etc/freeside/handler.pl";
</Perl>
-PerlSetVar Global /usr/local/etc/freeside/asp-global/
-PerlSetVar Debug 2
</Directory>
|
- | |
-- Restrict access to this web interface - see the Apache documentation on user authentication. For example, to configure user authentication with mod_auth (flat files):
+
- Restrict access to this web interface - see the Apache documentation on user authentication. For example, to configure user authentication with mod_auth (flat files), add something like the following to your Apache httpd.conf file, adjusting for your actual paths:
-<Directory /usr/local/apache/htdocs/freeside-asp>
-PerlSetVar Global /usr/local/etc/freeside/asp-global/
+#your freeside document root
+<Directory /var/www/freeside>
AuthName Freeside
AuthType Basic
AuthUserFile /usr/local/etc/freeside/htpasswd
@@ -169,25 +186,22 @@ require valid-user
- (using other auth types, add each user to your Apache authentication and then run: freeside-adduser username
- - As the freeside UNIX user, run bin/fs-setup username (in the untar'ed freeside directory) to create the database tables, passing the username of a Freeside user you created above:
-
-$ su freeside
-$ cd /path/to/freeside-1.4.0/
-$ bin/fs-setup username
-
- - As the freeside UNIX user, run bin/populate-msgcat username (in the untar'ed freeside directory) to populate the message catalog, passing the username of a Freeside user you created above:
+ (using other auth types, add each user to your Apache authentication and then run: freeside-adduser username)
+
- Create the Freeside system users:
+
$ su
+# freeside-adduser fs_queue
+# freeside-adduser fs_selfservice
+ - As the freeside UNIX user, run freeside-setup -d domain.name username to create the database tables and initial data, passing the username of a Freeside user you created above:
$ su freeside
-$ cd /path/to/freeside-1.4.0/
-$ bin/populate-msgcat username
+$ freeside-setup -d example.com username
- - freeside-queued was installed with the Perl modules. Start it now and ensure that is run upon system startup (Do this manually, or edit the top-level Makefile, replacing INIT_FILE with the appropriate location on your system, and run make install-init)
+
- freeside-queued was installed with the Perl modules. Start it now and ensure that is run upon system startup (Do this manually, or edit the top-level Makefile, replacing INIT_FILE with the appropriate location on your systemand QUEUED_USER with the username of a Freeside user you created above, and run make install-init)
- Now proceed to the initial administration of your installation.