The following instructions are for installing Movable Type 2.5 on a website hosted by DreamHost. I created the instructions from notes I took during what turned out to be a smooth, problem free install. I tried to write down a note for each step, but it is definitely possible I may have missed a step. The next time I do an install, I will update these notes if I discover I left out anything important. If you notice an error or missing info, I would appreciate it if you let me know at robert AT wombatnation DOT com.
If you already have MT 2.5 installed, take a look at my instructions for upgrading to 2.6.
Any text in bold should be replaced with your specific website name, database name, database user, database password, MovableType username, etc. Obviously, I did not really use ahardtoguesspassword literally as my password, and neither should you.
New MySQL domains and databases take about an hour to become active on DreamHost, so do this step as early as possible. MySQL domains and databases are created in the MySQL control panel, in the "Goodies" section. MySQL domains are special; don't create your MySQL domain in the regular DreamHost domain control panel.
There are a lot of ways to do this. I did the following:
You can do some of the following on your local computer before uploading to your DreamHost server, but I think it is much easier to do this work on the server. While you can use Telnet instead of ssh to connect to your server, ssh is secure and just as easy to use. If you use Windows, I recommend PuTTY.
cd
into domainname.com directorygunzip MT-2.5-full-lib.tar.gz
tar -xvf MT-2.5-full-lib.tar
These instructions assume you want to install MovableType into a new sub-directory called "mt" and you want your weblog's public homepage to be at www.domainname.com/blog.
mkdir mt
mv MT-2.5-full-lib mt
mkdir blog
cd mt
I use emacs as my editor. Use whichever editor you know well. I added simplified emacs instructions in case you haven't used it before.
emacs mt.cfg
ObjectDriver DBI::mysql
Database mtblogdb
DBUser dbadmin
DBHost mysql.domainname.com
DBUmask 0022
HTMLUmask 0022
UploadUmask 0022
DirUmask 0022
emacs mt-db-pass.cgi
On my system's install of Emacs, the file you are editing is always backed
up with the same name appended with a ~. For example, after editing and saving
mt.cfg with Emacs, you will find an mt.cfg~ file in the directory. Use
rm *~
to delete these backup files. If you use a different
editor, like vim, pico, or nano, make sure you delete the backup files from your
server immediately.
Otherwise, anyone who knows your directory structure could request copies of the backup files with an appropriately, constructed URL, e.g., http://domain.com/mt/mt-db-pass.cgi~. Normally, a cgi file will be executed on the server rather than served back to the browser as a file. However, a .cgi~ file just looks an ordinary text file to the web server.
Also, you should protect mt.cfg with a .htaccess file for the directory. This is clearly explained in the Movable Type instructions.
Permissions for the CGI files, except for mt-db-pass.cgi, should be set to read/write/execute for you and read/execute for group and other. The root directory for your blog should also be set to read/write/execute for you and read/execute for group and other.
chmod 755 mt*.cgi
chmod 644 mt-db-pass.cgi
cd ..
chmod 755 blog
Load http://www.domainname.com/mt/mt-check.cgi
in a web browser to
make sure your DreamHost server has the proper versions installed of the Perl modules that
MovableType requires.
When I checked (October 2002), DreamHost had everything installed with new enough versions. The CGI script also indicated that cgiwrap or suexec were probably installed. At the time, the version of Perl on my DreamHost server was 5.00503, which is new enough for MT 2.5.
Load http://www.domainname.com/mt/mt-load.cgi
in a web browser
to init the system. You should see something like:
Loading initial data into system... Loading database schema... Loading blog... Loading author... Loading permissions... Loading templates... Mapping templates to blog archive types... Mapping template ID '10' to 'Daily' Mapping template ID '10' to 'Weekly' Mapping template ID '10' to 'Monthly' Mapping template ID '11' to 'Category' Mapping template ID '12' to 'Individual' Done loading initial data! All went well.
Now, go back to your ssh session:
cd mt
rm mt-load.cgi
This is necessary to prevent you or someone else from re-initializing your system.
http://www.domainname.com/mt/mt.cgi
in a web browserMelody
with password Nelson
If everything went as planned, you should now be able to administer and post to your Movable Type weblog.