Installing

From Online Manual

Jump to: navigation, search

Installing an SMF forum is very simple! Installing SMF can be done in six quick and simple steps.

It is not recommended to use an auto-installer to install SMF, because many of them are known to have issues or confuse users in the long run. Installing SMF manually is not that difficult and will help you to understand how it works a bit better.

SMF is free forum software that can be installed on a webserver. To install it, you will need a webserver with php, and access to a database. You can create a database ahead of time (be sure to note all the important database information) or wait for the installer to help you with this step. Please see the requirements and recommendations for more on what you'll need before you start an install.

In a nutshell, here is what you'll be doing. The rest is just details:

Now, for the detail...


Create a Database

Once you create your database, be sure to make note of the database name, database user name, and password. You'll need it later, when you run the installer. An SMF forum needs a database to store all the information about members, posts, and topics. You can use the tools your web host provides to create a new database and a database user for SMF to login as and use. If you neglect this step at this point, the SMF installer will offer to help you with it later on.

Creating a database using PHPMyAdmin

Most shared hosting services disable this option. If the option to create databases through PHPMyAdmin is available through the hosting service you use, the database can be created from the PHPMyAdmin home page.

Creating a database using a control panel

Shared hosting services usually disable the ability to create a database through PHPMyAdmin. If the hosting service provides a control panel interface, then this can be used to create a database. Selecting the "MySQL Databases" or "Database Wizard" options should take you to a page prompting you to creating a MySQL database. With different hosts, these options may have different names.

SMF 2.0 supports MySQL, has PostgreSQL and SQLite. SMF 1.1 supports only a MySQL database.

Creating a database user

A database user can be created through the control panel provided by your hosting service. Selecting the "MySQL Databases" or "Database Wizard" options should take you to a page, prompting you to create a MySQL database user. With different hosts, these options may have different names.

The database user requires the following permissions: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, and INDEX. Additional permissions may be granted, if desired.

Get SMF

The first step is to get a copy of the SMF software. Using your browser, you can downloaded the latest version to your desktop computer. All SMF downloads can be found on the SMF downloads. The latest recommended version will always be available at
http://www.simplemachines.org/download/index.php/latest/install/


Extract the SMF archive and upload the files to your website

The SMF install archive contains files that need to be copied to the correct place on your web site before the installer can be executed. Wherever the files are located on the server -- that's where your forum will be located. Extracting before Uploading is usually the simplest way to do it. If your host provides the tools for it, you can try Uploading before Extracting.

You will need to use either FTP (in binary mode How do I use FTP ) or the tools in in your hosting account's control panel (for more information on the control panel supplied by your hosting service, please see the documentation provided by your hosting service)

SMF can be uploaded to the site root, or to a directory on the site, such as www.yourdomain.com/forum

Extracting Before Uploading

This is the way most people do it. It's easy, but can take longer. First, extract the archive -- usually by right-clicking the archive and selecting the "Extract All" option. A new folder should be created, with all the files and directories in the correct places, when the install archive is extracted. Second, set your FTP client for binary transfer, select all the files and folders and copy them to the directory where you want to locate your forum.

Uploading Before Extracting

Some control panels, such as cPanel, give the ability to extract an archive right on the server. This can be a quicker than waiting for all the extracted files to copy via FTP. First, upload the file via your account's control panel. Second, select the extract option to extract the archive to the desired location -- the directory where you want your forum to be located.

Set File and Folder Permissions

File and folder permissions control who can see your files and use your folders. They can control whether you will be able to install mods to your forum. You will use Unix chmod values to designate permissions. On most servers, a setting of 755 for folders and 644 for files will work. If this does not work on your hosting service, you may need 777 or 775 for folders, and 666 or 664 for files. Some hosts do not allow using 777 for folders or 666 for files -- using such high values will cause Internal Server Errors, 500 erors, or other errors. If the permission on your files or folders does not make them writable, the SMF installer will report the problem -- if it can detect it.

Note that if a windows server is being used rather than a linux server, then you will need to contact your host to change the file/folder permissions.

Setting File Permissions With the Installer

In many cases, the SMF installer can handle this for you. If you want to give this a try, skip this step for now, and wait until you come to the appropriate point in the installer. The installer might need to ask you for FTP login details to get the job done, so be sure to make a note of them. If you run into any problems setting file permissions with the installer, you can use the instructions below for Setting File Permissions with FTP to handle it yourself.

Setting File Permissions With FTP

Using a control panel or FTP client, file permissions can be changed quickly and easily. Usually, FTP programs will allow permissions to be changed by right-clicking files/directories and selecting "Properties", "Attributes" or "Permissions". The desired numerical value can be entered, or if provided, check boxes can be changed.

  • /attachments
  • /avatars
  • /cache
  • /Packages
  • /Packages/installed.list
  • /Smileys
  • /Themes
  • agreement.txt
  • Settings.php
  • Settings_bak.php
  • install.php


Run the installer

This is nearly the last step. You know where your forum directory is, because you put the files there yourself. So, point your browser at the file install.php in that directory. For example, if you put your forum in www.yourdomain.com/forum, you should point your browser at www.yourdomain.com/forum/install.php

This script will ask you for information, some of which you have created and collected earlier.

Basic forum settings

Forum Name
The name for the forum being installed should go here. By default, this is set to “My Community”. This can be changed, later, in the Server Settings section of the administration center.
Forum URL
The URL for the forum, without the trailing slash (http://www.yourdomain.com/forum, for example). The SMF installer will probably guess this one correctly.
Gzip Output
If Gzip output tests pass, use this to save bandwidth and make pages load faster.
Database Sessions
Choose whether to store sessions in the database or in files. Database Sessions is preferred -- they are more reliable, secure and may work better on sites with multiple servers.
UTF-8 Character Set
UTF-8 character sets are useful for international forums, or forums that use languages other than English.
Allow Stat Collection
This option allows Simple Machines to collect statistics from your forum, anonymously, to help the developers understand the needs of the user community.

Database server settings

Database type
The database schema can be selected here from a list of database schemas supported by the server being used. Newer schemas (for SMF 2.0) such as PostgreSQL and SQLite may be listed here if available. MySQL and PostgreSQL are recommended.
Server name
The location of the database is specified here. 99% of the time this will be localhost.
Username
The username used for the database user should be placed here. If help is required, for this, the hosting service provider should be contacted.
Password
The password for the database user is entered here.
Database name
The name used for the database should be placed here. If help is required, for this, the hosting service provider should be contacted.
Database prefix
The prefix for all tables, associated with this install, is specified here. Prefixing tables with unique prefixes enables more than one application, or SMF install, to use the same database, safely.


Creating an administrator account

The SMF installer will ask for information to create the forum's administrator account. This information includes username, password and e-mail address for the administrator account. This account will be necessary to get access to the SMF administration center, to manage and configure the forum.

Finishing the installation process

Once all steps of the installation process have been completed, check the box to remove the install files from the server. If this does not work, they will need to be deleted via FTP. All installer files should be removed from the server once the installation process is complete. SMF does not need them any longer and they are a security risk.

Tidy Up

  • If you haven't already done so, delete install.php. It is a security risk to leave in place, once the install has been completed.
  • Check your File and Folder Permissions. For safety
    • Most directory permissions are set to 544, while most files are set to 444, although this will depend on your server configuration. If in doubt, ask your host what CHMOD settings should be used for files and directories.
    • The only exceptions are your root forum directory, the attachments and cache directories, which may need to be set as high as 777 on some servers (this setting will cause 500 errors on other servers).