Installation

From FUDforum Wiki
(Redirected from Install)
Jump to: navigation, search
Screenshot of the GUI Installation Wizard

This section describes the process of installing FUDforum on a webserver.

Contents

Verifying your system configuration

Before proceeding with the installation process, it is recommended that you determine that you have all of the software needed for the operation of FUDforum:

  • You need a web server like Apache, Nginx or IIS that can run PHP programs.
  • FUDforum requires PHP 5.1 or higher (we recommend installing the latest version)
  • A SQL database: (choose one of the folowing databases)
    • MySQL 4.1.2 or greater
    • Oracle database 9i or higher.
    • PostgreSQL 8.1 or better.
    • SQLite (ships with PHP 5 and later releases).
    • Some others as per Category:Databases.

If you find that the software on your server is older than the version needed for proper installation of FUDforum, you can download the needed programs from the web, the URLs are listed below. MySQL, PostgreSQL, SQLite and PHP are Open Source and you can download and use them for free, without paying any fees regardless of whether you use them for commercial or personal use. Oracle also provides a free version of their database called Oracle XE (although not open source), that can be used for installing FUDforum.

PHP configuration

To test your PHP setup is pretty simple, create a file called test.php in your web browseable directory into which put the following contents:

<?php
 phpinfo();
 ?>

If your PHP is installed correctly this will provide a full page of diagnostic information. If you do not get the diagnostic information your PHP is misconfigured and is not working. If you are running your own web server consider installing PHP (resources at http://www.php.net), if you are using a hosting provider ask them to install PHP, or consider switching to provider that does offer PHP.

Once you get the phpinfo page, things to look for are:

  • PHP version - must be 5.1 or higher.
  • Database support - you should see a section for MySQL, PostgreSQL, SQLite or whatever database you will use. If not, ask your server admin to enable it.
  • Pspell support - not required for FUDforum to run, but if you intend to use the built in spell checker, pspell support must be enabled.

MySQL setup

MySQL is one of the database back ends that can be used. A proper MySQL setup is critical to fast performance of the forum. If you do not have MySQL installed, get it from http://www.mysql.com. MySQL is free software released under the GPL licence.

First check your version of MySQL, this can be accomplished in a number of ways, I'll show two.

METHOD 1: Using the MySQL command line client connect to MySQL.

$ mysql -uUSER_NAME -pPASSWORD

You should should get a prompt like

mysql>

type:

select VERSION();

at the prompt and press enter. You should get a version number that looks something like

mysql> select VERSION();
 +-----------+
 | VERSION() |
 +-----------+
 | 4.1.2     |
 +-----------+

METHOD 2: Checking with PHP

The second way to check involves using PHP, again it's quite simple. Just make a version.php file in your web browseable directory and put the following text into it:

<?php
 mysql_connect("YOUR_SERVER_ADDRESS", "USER_NAME", "PASSWORD");
 $result = mysql_query("SELECT VERSION()");
 list($mysql_version) = mysql_fetch_row($result);
 echo "MySQL Version: ".$mysql_version."<br />\n";
 ?>
  • replace the YOUR_SERVER_ADDRESS with the address of your mysql server (most probably localhost)
  • replace the USER_NAME with your mysql user id
  • replace the PASSWORD with your mysql user password

If your MySQL version is lower than 4.1.2, you need to upgrade to a later release.

Oracle setup

FUDforum supports Oracle 9i and higher database releases (older versions might work as well, but will not be supported).

You need to install a local Oracle database on your system (Oracle XE works well). Alternatively, install Oracle's Instant Client Software on your system (a free download from Oracle's TechNet website). Ensure you can connect to the database before attempting to install FUDforum.

PostgreSQL setup

Create a version.php file in your web browseable directory and put the following text into it:

<?php
 $conn = pg_connect("host=localhost user=USER_NAME password=PASSWORD");
 $result = pg_query($conn, "SELECT VERSION()");
 list($pg_version) = pg_fetch_row($result);
 echo "PostgreSQL Version: ".$pg_version."<br>\n";
 pg_free_result($result);
 ?>

If the script works, you should have no problem installing FUDforum on PostgreSQL.

Obtaining the FUDforum installer

Chose between the foloing methods to obtain the necessary files to install FUDforum.

Simply download it

The FUDforum installer can be downloaded from https://sourceforge.net/projects/fudforum/files/. This page will always contain the latest stable version of FUDforum as well as the latest development version if you want to test new features.

You will need a unzip utility to unpack the files. Unzip utilities (like WinZip) are readily available and you should not have any problems decompressing the install script on your system.

Unzip and copy the install.php and fudforum_archive to where you need to install the forum (if not there already).

Create your own install script

This is how to build your own install script (only for advanced users). You'll need to obtain FUDforum sources from SVN (subversion). For example:

Checkout FUDforum from SVN:

svn co https://fudforum.svn.sourceforge.net/svnroot/fudforum/trunk fudforum

Once the files are retrieved, run the following commands to generate the file archive:

cd fudforum
chmod 755 create_file_archive
./create_file_archive install 1 >> fudforum_archive

Copy the install.php and fudforum_archive to where you need to install the forum.

Note: You will need to have a php binary installed on your system in order to generate the fudforum_archive file. If you already have a php binary in your system, but it is not inside /usr/bin/php, modify the 1st line inside the create_file_archive script to reflect the proper path of the php binary on your system.

Note: If you want a smaller archive and have php compiled with the zlib module, you can pass a 2nd argument to the create_file_archive script, which would compress the archive file. This will result in a file that is approximately 1/3 the size.

Installation

Now that you have the FUDforum installation files, install.php and fudforum_archive, copy them into a web browseable directory. It is recommended to copy the files into the web directory where you intend to install the forum.

Choose getween GUI and command line installation.

GUI installation

To begin the installation of the forum, use your browser to access the install.php file.

Once you've accessed the script, you will see the welcome page of the installation wizard, which consists of five steps:

Step #1: Path of System Files and Directories

During the 1st step of the FUDforum installation, you get the opportunity to specify where you want the forum's files to be installed, as well as the URL of the forum. The install script will automatically put some default values for the options asked, you can use those values, or you can change them.

Important Symbol IMPORTANT: If your PHP has safe_mode enabled (unlikely as the PHP team is busy desupported it), you'll see an indicator that it is enabled in red on top of the install wizard. If safe_mode is enabled, you CAN NOT specify the directory where you've placed install.php as Server Root or Forum Data Root.
Web Directory

The Web Directory field allows you to specify the directory path where the forum's browseable files will be stored on your server's hard-drive. You will need to specify the full path to the directory. For example:

*NIX: /home/user/public_html/forum/
Windows: c:\\web\\my website\\forum\\

You need to enter \\ as directory separator on Windows because normally, \ is interpreted as an escape character. Since PHP is smart enough to convert / to \ internally, on Windows, you may want to use / as the directory separator and save yourself the hassle of having to deal with \\.

Data Directory

This is the location on your server's hard-drive where the forum's data files will be stored. It is highly recommended not to keep this directory inside a web browseable directory, since sensitive files such as messages bodies will be stored in it. For example:

*NIX: /home/user/public_html/forum/
Windows: c:\\web\\my website\\forum\\

Securing directory with .htaccess

<Location />
Order Deny,Allow
Deny from all
</Location>

The directories that you have specified as Forum Data Root and Server Root must exist and the webserver must have the permission to write to those directories before you click on the next link on the install wizard.

On *NIX systems there are several ways you can assign proper permissions to the directories you intend to use. The simplest method is to run command chmod 777 /home/user/directory in your shell account.

If you do not not have a shell account you can assign proper permissions to a directory by using your FTP client.

Changing permissions with CuteFTP:

  • Select the directory
  • Press CTRL+SHIFT+A
  • Enter 777 in the manual textbox
  • Press OK

Changing permissions with WS_FTP:

  • Right click on the directory
  • Choose the chmod UNIX option
  • In the dialog that appeared check all the checkboxes
  • Press OK
Forum URL

Enter the URL to your forum. When the forum is installed, visitors will be able to access it by going to this URL. Any files places inside Server Root should be accessible by going to this URL. For example, if you install FUDforum in /dir/html/myforum, your WWW_ROOT should be http://server:port/myforum/.

URL Check

Turn off this check if you are getting errors pertaining to the Forum URL not matching the Web Directory and are certain that the paths indicated are correct (not recommended!)

Once you've entered all the values, click on the next link to proceed to step #2 of the installation.

Step #2: Database Settings

Now that the forum's files were successfully decompressed, you will now need to specify the database settings for your forum.

Database Type:

Which database system to use to store the forum's data, MySQL or PostgreSQL.

Database Server:

This is the IP address or a UNIX domain socket that will be used to connect to the database server you intend to use.

Note: For optimal performance, we recommend using UNIX domain sockets.

Example:

Standard IP 127.0.0.1
UNIX Domain Socket :/tmp/mysql.sock

Database Login:

Login name for your database account.

Database Password:

Password for your database account.

Database Name:

The name of the database, where the forum's data will be stored.

FUDforum SQL Table Prefix:

A alphanumeric string that will be prepended to all FUDforum's table names. This is done to prevent conflicts with your existing tables, which may share same names as the tables used by FUDforum. As well as allow you to install multiple forums into a single SQL database by specifying a different prefix.

By default, this option has a value of "fud30_", if you are not sure, leave this value as is.

Step #3: Cookie Domain

Cookies are little bits of information that are stored on the user's computer, which are sent by the browser to the website which set them. Unless otherwise specified, FUDforum uses cookies to track the currently logged in users, thus the user is not required to login every time.

In order for the cookie to be set properly, it needs to have a correct domain specified for which you are sending a cookie. The installation script automatically figures out the most optimal cookie domain based on the URL you've entered in step #1.

If you decide to change this value make sure the domain has no less than two dots (2 x '.') in it, for example:

.mydomain.com

This is necessary because many browsers will not accept a cookie unless the domain has at least 2 dots in it.

Due to the nature of cookies, cookies cannot be set for IP address' or domains without any dot's in them. In this case, the forum will revert to using URL based sessions to keep track of users. The downside of this, is that after certain period of inactivity, usually 30 minutes, the session will expire and the user will be required to re-login.

Step #4: Forum Theme

In this step you get to choose the language and template set that your forum will use.

Select appropriate values from the list of available languages and template sets or accept the defaults.

These setting are not permanent, and if you so desire, you will be able to change it later once the forum has been installed from the Theme Manager.

Step #5: Admin Account

The last step of the installer involves the creation of the first administrator account. You will need to enter the administrator's login name, password and the email address into the specified text boxes. For best security, do not use easily guessable login names like "admin" or "administrator".

You will be able to add additional administrators once the forum is installed.

Installation Complete

The forum installation has now been completed, if you click on the next button you will be taken to a login form that will allow you to login into the administrator account you've created on step #5

It is of critical importance that you remove the install.php file once the installation process has been completed. Otherwise someone could re-install over the forum you have created.

Command line installation

Starting from FUDforum 3.0.2 the installer can also run in command line mode. This allows hosts and experienced users to perform repeated and/or automated FUDforum installations.

Running the installer from command line

You can run the installer on the command line in interactive or automated mode. For automated installation, create file called install.ini (fud_config.ini in older releases) with the below settings. If this file is not present, or some setting are missing, the script will interactively prompt for them:

; Settings for command line installer
WWW_ROOT                = "http://127.0.0.1:8080/forum/"
SERVER_ROOT             = "/home/lampstack/apache2/htdocs/forum/"
SERVER_DATA_ROOT        = "/home/lampstack/apache2/htdocs/forum/"
DBHOST                  =
DBHOST_USER             = root
DBHOST_PASSWORD         = dbpassword
DBHOST_DBNAME           = fudforum
DBHOST_TBL_PREFIX       = fud30_
DBHOST_DBTYPE           = mysql
COOKIE_DOMAIN           = 127.0.0.1
LANGUAGE                = en
TEMPLATE                = default
ROOT_LOGIN              = admin
ROOT_PASS               = admin
ADMIN_EMAIL             = "me@myserver.com"

To start the command line installer, run:

php install.php

Remove the installer, etc.

sudo rm install.php
sudo rm uninstall.php 
sudo rm upgrade.php 
sudo rm fudforum_archive
sudo rm install-final.php
 

Make the files accessible by apache:

sudo chown -R apache /home/lampstack/apache2/htdocs/forum/

Now you can access it at http://127.0.0.1:8080/forum/

Also see

  • FAQ, some frequently asked questions w.r.t installing FUDforum.
  • Configuration, configuring your forum after installation.
  • Upgrading, upgrade procedure.
Languages
Personal tools