Edit on GitHub

Getting Started

Outlines the server requirements, how to dowload Symphony, and how to install it.

This tutorial will walk you through how to install Symphony, either by downloading it from the Symphony website or cloning the latest stable release on Git.

Server requirements

  • PHP 5.3 or above
  • PHP’s LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • A webserver (known to be used with Apache, Litespeed, Nginx and Hiawatha)
  • Apache’s mod_rewrite module or equivalent
  • PHP’s built in json functions, which are enabled by default in PHP 5.2 and above; if they are missing, ensure PHP wasn’t compiled with --disable-json

Download from the Website

Download the ZIP archive for the current release from the Symphony website. Extract the folders into your target directory on your server.

Now go to the section Running the Installer.

Cloning with Git

  1. Clone the Symphony Git repository to the desired location:

    git clone https://github.com/symphonycms/symphony-2.git target-directory
    cd target-directory
    

    (Replace target-directory with your chosen new directory name.)

  2. (Optional) If you would like to add the bundled optional extensions, run the following commands to checkout the bundle branch which contains the Git submodules references and update the submodules:

    git checkout --track origin/bundle
    git submodule update --init --recursive
    

    The extensions included in the optional bundle:

  1. (Optional) If you would like to install the example workspace, run:

    git clone https://github.com/symphonycms/workspace.git
    

    If you skip this step, Symphony will create a blank workspace environment for you during the installation.

Running the Installer

Regardless of which method you choose to obtain Symphony, the installation process is the same.

  1. Point your web browser at the install subdirectory (e.g., http://example.com/install/).
  2. Provide details on connecting to your database and your server environment.
  3. Select some configuration items and provide details for your administrative account.
  4. Chuckle villainously and tap your fingertips together (or pet a cat) as your installation completes
  5. Remove installer files: rm -rf install/ workspace/install.sql

After the installation is finished, Symphony will redirect you to log into the backend (by default, located at /symphony/). If you did not follow the instructions above to remove the installer files, a notification will prompt you to do that after you have logged in. You should really get on that.

Clean Up File Permissions

  1. Symphony’s installer will inform you if it needs write access to directories that it doesn’t already have, but you can ensure it has the access it needs by temporarily setting the root to world-writeable.

    chmod 777 /your/site/root/
    
  2. Once Symphony is successfully installed, you should change file/directory permissions to something tighter for security reasons. Symphony recommends 755 for directories and 644 for files as a good default, but this may need to be changed depending on your server’s users and groups configuration. For example, you may need to change directories and files that Symphony needs to subsequently write to to 777 and 666 respectively.

Useful commands

You may find these commands useful when adjusting file and directory permissions.

To recursively chmod directories only:

find /your/site/root -type d -exec chmod 755 {} \;

To recursively chmod files only:

find /your/site/root -type f -exec chmod 644 {} \;

Success! What Now?

Congratulations, you have a working Symphony installation. If you downloaded the example workspace, then you can tour the workspace. Alternatively, you can try our Hello World! with Symphony tutorial to learn how to create a basic site from a blank workspace.

You might also want to learn about installing extensions to add more features to Symphony.

Aaaah, It All Ended in Tears!

Don't panic.

Check our Community section to discover the best ways to seek help from other Symphony users.