Installing an SMF forum is very simple! Installing SMF can be done in five quick and simple steps:
Download the Install Archive
The latest SMF release can be found on the downloads page of our website, or alternatively the latest stable release will be available for direct download from http://www.simplemachines.org/download/index.php/latest/install/
Extract and Upload the Install Archive
Once the install archive has been downloaded, it will need to be uploaded and extracted before the installer can be executed. There are two methods for this step. The method used will depend on the tools available with the control panel supplied by your hosting service. Please ensure you upload in binary if using an FTP client.
SMF can be uploaded to the site root, or to a directory on the site, such as www.yourdomain.com/forum
Uploading Before Extracting
Some control panels have the ability to extract an archive, such as cPanel. This allows for hassle free uploading and extraction of the archive. Once the archive is uploaded, select the extract option to extract the archive to the desired location.
Extracting Before Uploading
If extracting abilities are not available inside the control panel, the archive can be extracted before uploading. Generally, right-clicking the archive and selecting the "Extract All" option will work. The directory structure should be retained when the install archive is extracted, so all files and directories are in the correct places.
Set File Permissions
After the install archive has been uploaded and extracted, you need to set the files' permissions. This is commonly done, using a Unix utility called CHMOD. The correct CHMOD value for SMF files is either 777, 775 or 755, depending on your hosting service. There are two methods for this step, the method used depends on the hosting service that you use.
Setting File Permissions With the Installer
The SMF installer can set file permissions simply and easily. Navigating to the directory where SMF is located should redirect you to the install.php file and prompt the installer. For example: www.yourdomain.com/forum/install.php. If the installer detects files that need their permissions adjusted it will prompt for FTP details so it can CHMOD the files it requires for the install. This may not work on some servers.
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.
The Following files and directories should have CHMOD values of 777, 775 or 755:
- /attachments
- /avatars
- /Packages
- /Packages/installed.list
- /Smileys
- /Themes
- /Themes/default/languages/Install.english.php
- agreement.txt
- Settings.php
- Settings_bak.php
- install.php
Create a Database and a Database User
Before running the installer, a database and a database user will need to be created. A database will store all of the information a forum requires, such as members, posts, and topics. A database user will allow the forum to access the stored information. The information for the database and the database user should be remembered for use with the installer.
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 has the ability to support other database types, including PostgreSQL and SQLite. SMF 1.1 supports only MySQL database types.
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, however, more can be granted: SELECT, INSERT, UPDATE, DELETE, ALTER, and INDEX.
Run the installer
The final step in installing SMF, is running the installer. The information from the previous steps will be used in the installation process.
The SMF install screen looks different for SMF 2.0 and SMF 1.1, however, both still require the same information. Navigating to the directory where SMF is located, should redirect you to the install.php file, and prompt the installer to run. In example: www.yourdomain.com/forum/install.php
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 via the server settings section of the administration center if needed.
- Forum URL
- The URL the forum can be found at, without the trailing slash. The SMF installer will most likely have this correct, so it is safe to leave this field alone.
- Gzip Output
- If Gzip output tests pass, this can be used to save bandwidth and make pages load faster.
- Database Sessions
- Sessions can be stored in the database, or in files. Database sessions 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, so the software can grow to meet the needs of its user base.
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 a username, password, and e-mail address, just like a regular account. Once created, this account can be used to visit the 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, as they are a major security risk if left on a server unattended. Once SMF is installed they are no longer needed.