Wednesday, 5 December 2007

Open Source Content Management System (CMS)

Now has come the time for me to extend my online presence. The development of my website has been sidelined as a hobby because I have been focussing on the graphics. Each time I have attempted to sit down and develop some sort of content for the site I am put off by the amount of work required to produce a new page in the same design. I am constantly asking myself questions about the design I hope to achieve and which computing language to learn and technology to implement in order to best achieve my design goals.

No longer need I be so worry. A friend has recommended me to use CMS Made Simple (CMSMS). I have used EasySite at work to manage the content of departmental webpages and I looked into purchasing a CMS, like RedDot, but these are both corporate solutions with a 5 figure pricetag. I needed a CMS to make it easy to generate new webpages and manage existing pages on my own site. Friends of mine have asked me to create websites for them in the past and I have been put off with the effort involved with initial design, HTML editing, and continual maintenance. With any luck, CMSMS will fit the bill - just design some graphics, settle on a stylesheet, arrange the layout, make a few templates - then hey presto! Instant website, as easy as posting to Blogger

I had a little bit of trouble setting it up on my Yahoo! Web Host using Dreamweaver MX to FTP it onto the site. I will post some info here in the hope that it will make the process easier for me in the future and also other CMSMS users uploading pages with Dreamweaver onto a Yahoo! server. These steps are taken from the CMSMS Quick Install via FTP documentation and I have included the solutions to the problems that I encountered.

  1. Download the latest stable release.
    No problem. Saved the zip file to my computer.

  2. Unzip the file.
    Unzip the file to the main folder of your website on your computer. You may already have some sub-folders with the same names as the CMSMS ones. I had to rename my 'images' folder as 'graphics' and then change the existing references in my index.html file.

  3. Upload to your host.
      Start Dreamweaver.
    • Open the 'index.html' file of your website. I have already setup Dreamweaver with the FTP settings to upload stuff to my Yahoo! Web Hosting service.
    • Go to Window>Site and this opens a taskbar for FTP upload.
    • Click on the 'Connect to remote host' button.
    • Choose 'Local View' from the dropdown list. All of the unzipped CMSMS folders should be shown in the file list alongside any others of your website. If not, then you need to copy them into this folder.
    • Choose the main folder in the list and press the Put File(s) button.
    • A message will popup asking whether you are sure that you want to put the entire website. Say yes.

    This took my Internet connection ages. I went away and made lunch, ate it, watched the BBC News, nipped out to the shops, talked to a friend on the phone, then came back and it was done.

  4. FTP permissions
    This was a tricky one. First of all, Dreamweaver MX does not have an easy facility to change the permissions on files via FTP. Quick point of note - Dreamweaver MX 2004 version 7 and above DO have an extension that allows you to do it, but I am running Dreamweaver MX 6, so I had to do it the hard way.
    Make sure the 'Connect to remote host' button is still on (the little 'light' should be green and the cables plugged together) and go to the FTP Log. To find this, Go to Window>Results>FTP Log. To change the necessary file permissions you have to type the following script into the FTP Command one line at a time.
    site chmod 775 /tmp/templates_c
    site chmod 775 /tmp/cache
    site chmod 775 /uploads
    site chmod 775 /uploads/images
    site chmod 775 /modules

    After each line, press Return on your keyboard and the following message should appear in the box below the FTP Command:
    site chmod 775 /tmp/templates_c
    200 CHMOD command successful.

  5. Config.php file
    Go to Start>Programs>Accessories
    Press Notepad.
    Go to File>Save As...
    Browse to the folder of your website on your computer.
    Name the file config.php
    Make sure the 'Save as type' dropdown list shows 'All Files'
    Press OK.

    Back in Dreamweaver with the 'Connect to remote host' button still on, go to the FTP upload task bar Window>Site.
    Choose 'Local View' from the dropdown list.
    Choose the config.php file that you have just saved.
    Press the Put File(s) button.
    Go to the FTP Log again.
    Type this into the FTP Command
    site chmod 666 /config.php

    and you should see a message in the box below the FTP Command
    site chmod 666 /config.php
    200 CHMOD command successful.

  6. PHP Database
    Go to your Yahoo! Web Hosting Control Panel
    Go to the Create&Update tab.
    Click on the MySQLDatabase in the Other Site Building and Editing Tools section.
    This will allow you to setup the MySQL database features of your Web Hosting. Then you will need to install the phpMyAdmin facility.
    When prompted to do so, create a new directory to install the phpMyAdmin, this will make it easier for your to access the facility later.
    Choose the username cms_user as in the CMSMS instructions.
    Choose a memorable password. This does not have to be the same as in the CMSMS instructions, but you will need it later.
    After it is installed it should log you in as cms_user automatically.
    Click in the 'Create new database' box and type cms.
    Press 'Create'. The dropdown list that says 'Collation', is not important.
    In the frame on the left hand side there is a HOME button (looks like a house) that takes you back to the main phpMyAdmin page.
    Click on 'Privileges'
    There should now be two users; cms_user and yroot. Yroot is the default Yahoo! user that has full permissions. You need to give cms_user full permissions too.

    My thanks to cmsuser123 on the CMSMS Forums for the instructions on how to do this. Those refer to a problem in Step 10, but if you do this now, you will not have that problem.

    In the phpMyAdmin Privileges page, on the same row as the yroot user, click on the symbol of a human with a pencil.
    Scroll down and change the password to another memorable password. Keep this password for future reference.
    Now log out of phpMyAdmin.
    Log back in again, but this time with the username yroot.
    Use the password that you just changed for yroot.
    Go to the Privileges page.
    On the same row as cms_user, click on the symbol of a human with a pencil.
    In the 'Edit Privileges' section, Check All Global Privileges.
    Press the Go button.

  7. Go to www.yourwebsite.com/index.php

  8. Begin to Install CMSMS
    No problem. Everything was ticked so I pressed Continue.

  9. Admin Account Information
    Choose a username for you to access the editing side of CMSMS.
    Enter your email address.
    Choose another memorable password. This is not the same as your email password. Nor the cms_user password for phpMyAdmin. Nor the yroot password for phpMyAdmin.
    Press Continue.

  10. Database Information
    This is the same information from cmsuser123 on the CMSMS Forums; the "Database Host Address" should be changed from "localhost" to "MySql".
    Database name should be the one you made earlier, cms.
    Username should be cms_user
    Password should be the phpMyAdmin password you gave for cms_user.
    Leave the other information as it is default and press Continue.

  11. Installation Complete
    Write down the CMS Document root, the path to the Document root and the Querystring.
    Press Continue.

  12. Config.php file security
    Back in Dreamweaver with the 'Connect to remote host' button still on, go to the FTP Log again. Window>Results>FTP Log
    Type this into the FTP Command
    site chmod 444 /config.php

    and you should see a message in the box below the FTP Command
    site chmod 444 /config.php
    200 CHMOD command successful.

    Go to your Yahoo! Web Hosting Control Panel
    Go to the Manage tab.
    Click on the File Manager.
    Click on the bin image for the install subfolder.
    Confirm deletion.
    _______________
    ***IMPORTANT***
    DO NOT DELETE index.php


  13. Installation complete!!
    You can log into CMSMS from www.yourwebsite.com/admin/
    The username is the Account Admin Username from Step 9.
    The password is the one from Step 9.
    These should both have been emailed to the address you gave in Step9.


This is as far as I have gotten with CMSMS. Fingers crossed that it meets my needs. I have to get my MSc project online as soon as possible.

0 comments: