File System
This guide describes the files and directories in a typical Movable Type installation.
- File System Tour
- Server Directories
- Core Directories
- Plugin Directories
- Addons Directories
- Blog Directories
File System Tour
Directories in Movable Type each have a specific purpose and contain all the files necessary for that purpose. Here we will explain each of these specific directories.
Each hosting provider sets up their system differently and names the various directories based upon their preference, but the general organization is the same. Here is a sample file structure with notes regarding files and directores important for installation:
www/ <-- Site Directory (may be the same as the user directory if single-site account)
cgi-bin/ <-- "cgi-bin" executeable files directory
mt/ <-- MT Application Directory or $MT_HOME
addons/ <-- Addons directory
alt-tmpl/
default_templates/
extlib/
import/
index.html
lib/
mt-add-notify.cgi
mt-atom.cgi
mt-check.cgi
mt-comments.cgi
mt-config.cgi <-- mt-config.cgi
mt-config.cgi-original
mt-cp.cgi
mt-feed.cgi
mt-ftsearch.cgi
mt-search.cgi
mt-static/ <-- MT Static Directory (moved to web root if necessary, see in web root)
mt-tb.cgi
mt-testbg.cgi
mt-upgrade.cgi
mt-wizard.cgi
mt-xmlrpc.cgi
mt.cgi
php/
plugins/ <-- Plugins Directory
readme.html
search_templates/
themes <-- Themes Directory
tmpl/
tools/
html/ <-- Web Root (or Site Root, if publishing directly to the web root. Could also be the "Website Root")
blog/ <-- Blog Directory or "Blog Root"
index.html <-- homepage of the website
mt-static/ <-- MT Static Directory
addons/ <-- Addons Static Directory
codepress/
css/
flash/
htc/
html/
images/
index.html
jquery/
js/
mt.js
plugins/ <-- Plugins Static Directory
readme/
styles.css
styles_de.css
styles_es.css
styles_fr.css
styles_ja.css
styles_nl.css
support/ <-- MT Static Support (MT places userpics and cache files here. Must be writeable.)
themes/
themes-base/
Web Root Directory
The webroot directory contains the homepage of the website. This directory is where the mt-static
directory will be placed (or where it will be aliased to unless stati files can be served from cgi-bin
directory).
File path to the web root directory is similar to one of the following:
/var/www/html/
/home/USERNAME/www.example.com/html/
cgi-bin
Directory
where cgi scripts are executable. This directory is usually named cgi-bin
, but may be CGI-BIN
or cgi
. If this directory doesn’t exist as a sibling or child of the web root directory, ask you hosting provider for the location.
File path to the cgi-bin
directory is similar to one of the following:
/var/www/cgi-bin/
/home/USERNAME/www.example.com/cgi-bin/
Application Directory
aka $MT_HOME
Throughout this guide $MT_HOME
is used to refer to the Application Directory, the directory where Movable Type is installed. The application directory is often named as “mt”, but may be named with the version and language like “MT-5.0-en”. In the mt-config.cgi
configuration file it will be the value of the CGIPath config directive.
File path to the application directory is similar to one of the following:
/var/www/cgi-bin/mt/
/home/USERNAME/www.example.com/cgi-bin/mt/
The application directory is the directory which contains the mt.cgi
script:
http://www.example.com/cgi-bin/mt/mt.cgi
Static Directory
aka $MT_STATIC
Throughout this guide $MT_STATIC
is used to refer to the Static Directory. This directory is named mt-static
. This directory is where static files such as images, css, and javascript which are used by the Movable Type application and some blog functionality. Static files for plugins are also placed in the plugins
subdirectory of this directory.
This directory may be in one of a few places, typically the application directory or the web root.
Tip: See the value of the
StaticWebPath
directive (orStaticFilePath
if used) in themt-config.cgi
file to determine the location.
File path to the static directory is similar to one of the following:
/var/www/html/mt-static/
/home/USERNAME/www.example.com/html/mt-static/
The url to this directory is typically:
http://www.example.com/mt-static/
To confirm you have found the correct directory, look for the mt.js
file in the $MT_STATIC
directory:
http://www.example.com/mt-static/mt.js
Static Support Directory
Movable Type places userpics and other files in this directory.
File path to the static support directory (located in the Static Directory) is similar to one of the following:
/var/www/html/mt-static/support/
/home/USERNAME/www.example.com/html/mt-static/support/
The url to this directory is typically:
http://www.example.com/mt-static/support/
Themes Directory
Themes for Movable Type are placed or exported to this directory.
File path to the themes directory (located in the Application Directory) is similar to one of the following:
/var/www/cgi-bin/mt/themes/
/home/USERNAME/www.example.com/cgi-bin/mt/themes/
The url to this directory is typically:
http://www.example.com/cgi-bin/mt/plugins/
Plugins Directory
File path to the plugins directory (located in the Application Directory) is similar to one of the following:
/var/www/cgi-bin/mt/plugins/
/home/USERNAME/www.example.com/cgi-bin/mt/plugins/
The url to this directory is typically:
http://www.example.com/cgi-bin/mt/plugins/
Plugins Static Directory
File path to the plugins static directory (located in the Static Directory) is similar to one of the following:
/var/www/html/mt-static/plugins/
/home/USERNAME/www.example.com/html/mt-static/plugins/
The url to this directory is typically:
http://www.example.com/mt-static/plugins/
Addons Directory
File path to the addons directory (located in the Application Directory) is similar to one of the following:
/var/www/cgi-bin/mt/addons/
/home/USERNAME/www.example.com/cgi-bin/mt/addons/
The url to this directory is typically:
http://www.example.com/cgi-bin/mt/addons/
Addons Static Directory
File path to the addons static directory (located in the Static Directory) is similar to one of the following:
/var/www/html/mt-static/addons/
/home/USERNAME/www.example.com/html/mt-static/addons/
The url to this directory is typically:
http://www.example.com/mt-static/addons/
Symlinking to the Application Directory
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:.
http://domain.com/cgi-bin/mt/mt.cgi
Instead of the versioned URL (or “in addition to” because the actual directories can still be accessed):
http://domain.com/cgi-bin/MT-5.0-en/mt.cgi
With this synlink (or alias) users won’t have to to access a new url and the application directory name doesn’t have to be changed from the version name it came with which helps to more easily know which version of MT is installed without viewing the footer while logged into MT. Also mt-config.cgi
files won’t need to be updated with new CGIPath
and StaticWebPath
variables.
For the following directory structure:
cgi-bin/
mt -> MT-4.32-en
MT-4.32-en
MT-5.0-en
This command will remove the current “mt” symlink and then create a new symlink:
rm mt; ln -s MT-5.0-en mt
Blog and Website Directories
This is the directory in which the website or blog is published, one exists for each blog or website published.
This directory is the value used for the “Website Root” or “Blog Root” setting on the “General Settings” (MT5) or “Publishing Settings” (MT5) screen.
Blog directories are often sub-directories of website directories or other blog directories.
Violet on January 12, 2010, 9:38 a.m. Reply
Under the Themes Directory section, there’s this statement:
Shouldn’t the last statement read as follows?
Violet on January 12, 2010, 9:57 a.m. Reply
One more thought — Shouldn’t you also list a Themes Static Directory in much the same way as you list a Plugins Static Directory and an Addons Static Directory?
And identify the folder path and url for it, as well?