Not a developer? Go to


Detailed Step-by-Step Guide to Movable Type Installation

This is the detailed installation guide for Movable Type. Simpler guides for those comfortable performing these types of installations are also available: Install via FTP or Install via SSH.

Note: Though this guide uses the version MT-5.0-en, it can be used to guide the installation of versions MT4.x or MT3.x as the install process is nearly identical.

Install Process

Installation requires three major steps. Here’s the basic process:

  1. Install New Version
  2. Configure New Version
  3. Initialize Database

About This Guide

This guide assumes that you have FTP, shell, or some other form of access to the server.

Throughout this guide two terms are commonly used:

Install New Version

  1. Download the Latest Release

    Choose a release from one of the following sources.

    Download desired version, or copy url if using SSH to install.

  2. Move Release to the Server

    Two paths to do this based up on what level of server access is available:

    • Via FTP - download locally, un-compress, then upload parts via FTP
    • Via SSH - upload via SSH, un-compress on the server, move directories

    Via FTP

    1. After downloading release to your local machine, double-click the (or MT-5.0-en.tar.gz) archive to un-compress.
    2. Upload (or move) the static directory (MT-5.0-en/mt-static) via FTP to the web root of the website.
    3. Upload the application directory (MT-5.0-en) without the static directory (MT-5.0-en/mt-static) via FTP to the cgi-bin directory.
    4. Rename the application directory from “MT-5.0-en” to “mt”.

    Via SSH

    1. Login to the server and cd to the cgi-bin directory.
    2. Copy release to the server.

      • Command line using wget:

        $ wget
      • Command line using curl -LO

        $ curl -LO

      Note: For Movable Type Pro, after downloading to your local computer from, copy it to the server. From your local computer:

      $ scp
    3. Unzip the release archive:

      $ unzip

      or if using a tar.gz archive file:

      $ tar xzvf MT-5.0-en.tar.gz
    4. Change the name of the directory from the versioned name (MT-5.0-en) to “mt”:

      $ mv MT-5.0-en mt

      Tip: a symlink can be created to point “mt” to the current application directory in the cgi-bin so that Movable Type can be accessed without the version number in the URL:.

      $ ln -s MT-5.0-en mt

      Read more about Symlinking to the Application Directory

    5. Move the static directory (MT-5.0-en/mt-static) to the web root:

      $ mv MT-5.0-en/mt-static /var/www/html/mt-static
  3. Update Permissions

    Read about changing file and directory permissions for the following directories:

    • Application Scripts, all files ending in cgi, must be readable and executeable by all users and writable only by the owner (755).
    • Support directory located at $MT_HOME/mt-static/support must be writable (typically 777 or 775).
    • Themes directory must be writable in order to export themes (typically 777 or 775).

    Tip: the mt-static/support and themes directories can be 775 if the web server user is in the directories’ group or 755 if the web server user owns the directories. Read more about File Permissions.

Configure New Version

Configuring requires the creation of the mt-config.cgi file. Two ways to do this:

  1. Use the Configuration Wizard. Access Movable Type; the url will be similar to Movable Type will redirect you to the Configuration Wizard if Movable Type can’t locate the mt-config.cgi configuration file.

  2. Manually create the mt-config.cgi configuration file.

Note: There are many other configuration directives which may be used to customize the install.

Note: Optionally, confirm proper installation that MT is installed properly by accessing the mt-check.cgi script. Should be a url similar to this:

The message “Movable Type System Check Successful” will appear at the bottom of the screen if the server has all the necessary libraries/modules for installing Movable Type.

If the system check fails to complete, then the missing Perl libraries/modules must be installed before continuing.

Initialize Database

Once the mt-config.cgi configuration file is in the application directory:

  1. Access Movable Type; the url will be similar to If proceeding from the Configuration Wizard, you will be redirected to this url.
  2. Create the administrator account. Click “Continue”.
  3. Create the first website. Click “Finish”.

    Movable Type will then initialize the database with all the configuration options and settings specified.

  4. Click “Sign into Movable Type”… you’ve installed Movable Type.

If there are any errors, double-check that the steps above have been completed.

Install Plugins

Third-party plugins critical to the functionality of blogs/websites published by this installation of Movable Type should be installed before the new version is used to publish otherwise there may be errors.

Read about “Confirming Plugin Compatibility” in the Pre-Upgrade Check List at the top of this guide.

Start Blogging!

Once necessary third-party plugins have been installed, publish each blog and website to test for any errors.

Warning: because the mt-check.cgi script displays server details which could be useful to a hacker, it is recommended that this script be removed or renamed. If renamed, use the CheckScript directive so that Movable Type knows where the script was moved.



sam on April 21, 2012, 7:34 p.m. Reply

I downloaded the zip file of mtos5.13, unzipped and tried to follow the readme.html (installment procedure wasn’t clear) and decided to follow the installment steps (via ftp) on this page :) Seems to make a litle more sense now. CuteFtp is working hard on the 2820 files in 334 folders (!)

sam on April 21, 2012, 8:16 p.m. Reply

Ooops, got

“Error: ‘’ could not be found. Please move your static files to the directory first or correct the setting if it is incorrect.”

mt-static is in the correct location. How do I correct the “settings” ? Does anyone know ?

sam on April 21, 2012, 8:57 p.m. Reply

If anyone wants to know: to overcome this probleme, just edit the mt-config.cgi manually with WORDPAD and move on :)