Chapter 1: Installation and Upgrade
Installing Movable Type on Windows
Problem
You want to run Movable Type on a Windows system.
Solution
Movable Type has been developed to run on a wide variety of operating systems including Windows, although this entails some additional considerations.
Discussion
One of Movable Type's strengths as a platform is that it runs in a wide variety of environments, letting you choose the operating system, web server, and database. As a Perl-based application though, Movable Type has historically been most at home on Unix-based operating systems like Linux, BSDs, or Mac OS X.
If you have chosen Windows as your platform, Windows Server 2003 is recommended for deployment in staging, development, or production. Windows XP Professional can also be substitued for staging or development scenarios.
In general, installing Movable Type on Windows is more a process of installing prerequisites than of configuring the application differently. A more comprehensive document explaining how to configure IIS, set up ActiveState's ActivePerl and MySQL for use with Movable Type can be found at http://www.sixapart.com/movabletype/docs/windows.
If you are installing MT on a Windows server which has already been properly configured for Perl, for running CGI scripts, and has one of the supported databases installed, you may not need to do anything differently at all.
The most common exceptions are as follows:
- You may need to use a .pl for the script extensions.
We highly recommend that, rather than using .pl extensions, you configure Windows to use .cgi for Perl scripts instead. (See Configuring A Windows Server To Run CGI Scripts.) Some plugins have configuration URLs which use .cgi extensions, and these links will not work if the server is not configured to recognize the file extension as a valid Perl script.
If you still wish to use .pl for the default Movable Type files, follow these steps:
- First, rename all of the mt*.cgi files to use .pl except for mt-config.cgi as this file is not actually an executable script. Movable Type cannot find it unless it is named with a .cgi extension.
- Update your mt-config.cgi to recognize the new script names by
adding these directives.
AdminScript mt.pl CommentScript mt-comments.pl TrackbackScript mt-tb.pl SearchScript mt-search.pl XMLRPCScript mt-xmlrpc.pl ViewScript mt-view.pl - After doing this, save the file and upload it back to your server in ASCII mode, if you are working via FTP.
- You may need to use a full server path for the database with the drive
letter.
The file-based database options (BerkeleyDB and SQLite) require you to specify a location on the file system. You may need to specify a full server path with the drive letter. For example in Berkeley DB:
DataSource d:\html\users\domain\cgi-bin\mt\dbWith SQLite the database name is the database file, therefore:
Database: d:\html\users\domain\cgi-bin\mt\mt.db - Assigning permissions works differently
The user iusr_server (where server is the unique name of your machine) will not be assigned any permissions by default. You'll need to add that user to the folder where you want Movable Type to execute and publish your weblog files.
Give the user either full control, or at a minimum the following permissions:
- modify
- read & execute
- list folder contents
- read
- write
Once you've added those permissions to the dialog box, but before you click OK, go to Advanced on the Security tab and check the box under permissions that says "Replace permission entries on all child objects with entries shown here that apply to child objects."
Then click OK to close that dialog, click OK again to apply the permissions, and wait while Windows applies those settings.
Shelley and Anil, Is this right? This is adapted from the KB and modified to cover the scripts being executable.



