mtinstall - Movable Type Installation/Upgrading
This document describes the process of installing the Movable Type system on your machine, or upgrading to a newer version of Movable Type.
Movable Type requires the following:
If you have already installed a previous version of Movable Type (1.0, 1.1, 1.2, 1.3, or 1.31), you do not need to perform a complete installation. Instead, follow these steps:
Make sure that you upload all of the files in ASCII mode, except for any images, which should be uploaded in binary.
NOTE: if you have made changes to any of the files that you are replacing, you will need to mark the files that have changed, and make the same changes to the new versions. This only applies if the changes you made have not been incorporated into the new Movable Type release in some form, of course. If you are unsure whether you need to redo a change you have made to one of the Movable Type files, ask your question on the Support Forum (http://www.movabletype.org/support/ib3/ikonboard.cgi).
755
.
This means that the owner should have read, write, and execute permissions, and that group and other should have read and execute permissions (but not write permissions).
Convert breaks
for
comments, but not for entries, if you would like. NOTE that if you wish to
convert line and paragraph breaks in comments in version 1.3, you need to edit
the configuration for each of your blogs, and check the Convert line and
paragraph breaks in comments
box.
0.8
of the
File::Spec Perl module. If you are not certain whether your server meets
this requirement, you should run mt-check.cgi again (see CHECKING FOR REQUIRED AND OPTIONAL MODULES, below); if your server needs a newer version
of File::Spec, follow the instructions here.
-w
at the end of the first line in each file; this setting turns
on warnings in Perl, and it is important that it be left on.
To determine the location of Perl on your webserver, take a look at the support pages for your hosting service. Alternatively, if you have a shell (command line) account, and are familiar using it, you can log in to that account that type:
$ whereis perl
This will give you the location(s)
of Perl on your system.
Change the line starting with CGIPath
to point to the URL where you chose
to install Movable Type in Step 4. For example, if you are installing Movable
Type at http://www.your-site.com/movabletype/, you would change the
CGIPath
line to
CGIPath http://www.your-site.com/movabletype/
NOTE: make sure that your URL contains a forward slash (/
) at the end!
Keep your text editor open for further editing (in Step 8).
NOTE: it is advisable from a security standpoint to create the database directory outside of your web-accessible directories. This prevents web browsers from seeing any of your database content. For example, many hosted accounts have a home directory that is not web-accessible, then a public_html directory that is the root of your web-accessible area.
Create a new directory called db. Set the permissions (CHMOD) of this
directory db to 777. If your FTP client uses a graphical display, 777 means
that all users in the list should have Read
, Write
, and Execute
permissions.
DataSource ./db
to instead read
DataSource /FULL/PATH/TO/DB
where /FULL/PATH/TO/DB is replaced by the full filesystem path to the db directory you just created. For example, if you create the directory at /home/melody/db, the above line would read
DataSource /home/melody/db
Then save the mt.cfg file, and exit the text editor.
Create a new directory for the Movable Types files, if necessary; then open that directory.
Upload these files/folders in ASCII mode: docs, lib, mt.cfg, styles.css, tmpl, and all of the CGI scripts (mt.cgi, etc.).
Upload these files/folders in Binary mode: images.
Set the permissions (CHMOD) of the files mt.cgi, mt-comments.cgi, mt-add-notify.cgi, mt-check.cgi, mt-load.cgi, mt-import.cgi, mt-export.cgi, and mt-xmlrpc.cgi to 755.
If your FTP client sets permissions using a graphical display, make sure that
all users in the list have Execute
and Read
permissions. Only the
Owner
should have Write
permissions. NOTE: if you are using the Unix
shell to set permissions, see Setting Permissions on Unix (below).
mt-load.cgi is a Perl script that loads initialization data into the Movable Type databases: an initial author, a blog, and some starter templates. If you get a 500 Internal Server Error when running this script, first check that you set the permissions to 755 (see above for what this means), and that you uploaded the file in ASCII mode. If these suggestions don't help, refer to the Troubleshooting section of the manual.
If successful, mt-load.cgi will report its success. If unsuccessful, it will report the error that occurred. This error could be due to insufficient permissions on the db directory, or the non-existence of that directory. See Step 6 (above) to determine whether you set the permissions correctly.
VERY IMPORTANT SECURITY NOTE:
Afer running mt-load.cgi, you should remove mt-load.cgi from the directory where you installed Movable Type. Failure to remove mt-load.cgi could enable someone else to create a blog in your Movable Type installation, and possibly gain access to your data. FAILURE TO DELETE mt-load.cgi INTRODUCES A MAJOR SECURITY RISK. So you should delete it now.
Movable Type requires the presence of several standard Perl modules, separate from the Movable Type code itself. It is very possible that your server already has these required modules; if it does not, installing the modules is fairly simple. To determine whether these modules are installed on your server--and to install them, if they are not already installed--follow the steps below.
For the function of several optional features, Movable Type needs some optional
Perl modules. These optional modules will be listed in Step 1 (below) under
the heading CHECKING FOR OPTIONAL MODULES
; if your webserver does not have
an optional module, its purpose will be explained in relation to the Movable
Type feature for which it is required. If you decide that you want to use these
features, you will need to install these modules, as well; however, if you do
not wish to use these features, you can ignore the missing modules.
mt-check.cgi is a Perl script that checks whether the required modules are installed on your server. If you get a 500 Internal Server Error when running this script, first check that you set the permissions to 755 (see above for what this means), and that you uploaded the file in ASCII mode. If these suggestions don't help, refer to the Troubleshooting section of the manual.
If the script runs successfully, it will say CHECKING FOR REQUIRED MODULES
and so on. If the script reports that your server has all of the required
modules installed, you can skip to SETTING UP YOUR BLOG DIRECTORIES.
Otherwise, continue with step 2.
Now, follow the instructions below for each of the modules that you need to install.
http://www.cpan.org/modules/by-module/HTML/HTML-Template-2.4.tar.gz
Ignore the rest of the files in the archive.
http://www.movabletype.org/downloads/Image/Size.pm
http://www.cpan.org/modules/by-module/File/File-Spec-0.82.tar.gz
If you are installing Movable Type on a
Win32 machine on which you have administrative access, you can run the Perl
Package Manager (PPM) to install DB_File. Select Run...
from the Start
Menu, then type ppm
as the program to run. Once in PPM, you will get a
prompt (ppm>
), at which you should type install DB_File
:
ppm> install DB_File
If you are installing Movable Type on a Linux/Unix machine, you should ask your server administrator to install DB_File for you.
http://www.cpan.org/modules/by-module/CGI/CGI.pm-2.78.tar.gz
http://www.cpan.org/modules/by-module/LWP/libwww-perl-5.62.tar.gz
http://www.cpan.org/modules/by-module/URI/URI-1.17.tar.gz
extlib/LWP.pm extlib/LWP/ extlib/HTTP/ extlib/Net/ extlib/WWW/ extlib/URI.pm extlib/URI/
http://www.cpan.org/modules/by-module/SOAP/SOAP-Lite-0.52.tar.gz
extlib/SOAP/ extlib/XML/ extlib/XMLRPC/
http://www.cpan.org/modules/by-module/File/File-Temp-0.12.tar.gz
The following steps will need to be repeated every time you create a new blog/journal in Movable Type. These steps set up the necessary permissions on your blog directories to allow Movable Type to access them.
You should see the Movable Type login prompt. If you do not, check your permissions, and check that you uploaded the CGI scripts using ASCII mode. If neither of these helps, take a look at the Troubleshooting section of the manual.
Melody
and the password Nelson
.
Edit your profile
, then change the author name and password
there.
First
Blog
already exists in the system; this blog will help to give you a head
start in setting up your first blog in Movable Type. First Blog
comes with
some pre-made templates; of course you can edit these templates, or delete
them, or do whatever you like with them. But they are a good starting point,
and will give you a sense of familiarity with the Movable Type template tags
and structure.
To configure the blog for your own purposes, click on the link to First
Blog
under Your existing blogs
, then click on the link to Edit Blog
Configuration
. Change the name of the blog to whatever you wish to call
your blog, and enter a description.
Then, fill in the path and URL information (Local Site Path
, Site URL
,
Local Archive Path
, and Archive URL
). Values for Local Site Path
and
Site URL
are provided by default, to give you a sense of what the paths
should look like; when setting the values of Local Site Path
and Local
Archive Path
, it is best to use absolute paths (paths beginning with a /
),
rather than relative paths. Note that all four of these fields must be
filled in. You should already have created the directories for your blog
(above, in Setting up your blog directories). Fill in the local paths
(site and archive) with the full paths to those directories. Then enter the
appropriate URLs, corresponding to those directories.
Edit any other configuration settings for your blog; when you are done,
press SAVE
.
WARNING: problems have been reported when running Movable Type on f2s accounts. These problems have been disk-space-related; specifically, if your f2s account is low on disk space, you should be careful when running Movable Type, because running out of disk space while the database is being updated could corrupt your data. This error is almost always fixable, but it is certainly an annoyance. Note that this problem is not necessarily unique to either Movable Type or f2s; when applications run out of disk space while trying to update files, problems will often occur.
Back to installation instructions
If you're not sure what version of Perl you have on your server, you can figure it out in one of three ways:
$ perl -v
This command will print out the version of Perl on your webserver.
Back to installation instructions
Movable Type distributions, as well as the distributions for most of the required and optional Perl modules, are saved in .tar.gz format--these are Gzip-ed TAR archives. If you are on Unix, you can use gunzip and tar to unpack these archives. For example:
$ gunzip file.tar.gz $ tar -xvf file.tar
If you are on a Macintosh, Stuffit Expander will unpack these archives. If you are on Windows, EasyZip or winzip will do the job.
If you are using the Unix shell to set permissions, the syntax for setting file and directory permissions is
$ chmod <number> <files>
The above permissions, then, could be set with
$ chmod 755 *.cgi
To determine the symbolic permissions of a file, you can use ls -l:
$ ls -l *.cgi
The listing for mt.cgi, for example, should look like
-rwxr-xr-x 1 <username> users <size> <date>
Symbolic permissions are read in groups of three (omitting the first character): read/write/execute by the owner of the file; read/write/execute by users in the same group as the owner; read/write/execute by all other users.
Back to installation instructions