JOOMLA !Developer Network

Installation guide PDF Print

This sample content is excerpted from the forthcoming book, titled Joomla! A User’s Guide: Building a Joomla! Powered Website, to publish in May, 2007, by Prentice Hall Professional. It is licensed under a Attribution-NonCommercial-NoDerivs 2.5.

This guide quickly leads you through installing Joomla. Both a local installation to use as you read this guide (if you don’t have a hosting account or have a slow internet connection) and real web server installations are described.

In This Guide

  • How do you install Joomla?
  • Where can you install Joomla?
  • How can you create a test environment or your local computer?
  • Where do I get the Joomla files from?
  • How can get support for installing Joomla?

Running and Testing Joomla Without a Hosting Account

Joomla is a complex series of PHP scripts that run on a web server. When you browse a Joomla site, these scripting are being generated on the fly and creating what you see on the pages of the site. The key words here are web server.

You cannot download Joomla and try to run it on your computer like an exe file. It has to have a web server, which means you need to have a hosting account. Sounds obvious, but I have had a couple of people ask if they needed windows XP to run Joomla!

Now, before we shell out our hard earned money for a hosting account, there is something else you can do first. You can actually run a web server on your local computer, in other words, your desktop or laptop. This is known as having a localhost. It may sound like I just contradicted myself from the previous paragraph, but not quite. You can’t “run” Joomla itself on your own computer, but you can install a localhost web server for it to “run on”.

What you need to pull this off is some software that runs Apache, PHP and MySQL on your computer. These are the same software packages that power websites. There are two popular ones that are both free (GPL license):

I am going to quickly run through setting up WAMP, note that this package is windows specific.

Download WAMP from www.wampserver.com/en, and then install it. It will create a folder c:/wamp/www.

Head over to www.joomla.org and get the version of Joomla you want to install (about a 4MB file).

Joomla comes in a zip file, unzip it into a folder inside WAMP, eg. c:/wamp/www/Joomla

Run WAMP, you should get a handy icon in your system tray which will look similar to Figure 3.1.

Winamp icons
Figure 3.1
Winamp icons in icon tray (windows)

You need the dial to be white to continue. Note if you run Skype, it interferes with WAMP and so you have to start WAMP without Skype running (and then start Skype if you need it)

Now open a browser and go to http://localhost (no “www”). You should see a page which looks like Figure 3.2.

Browser view of winamp
Figure 3.2
Browser view of Winamp http://localhost

If you are not seeing this then you should stop and figure out why. You have to get this page before you can proceed. The WAMP site has some helpful troubleshooting FAQ’s and a forum. You should see your folder called “Joomla” in the list of Your Projects. Click on that folder and you will get taken to that “website”.

Note:
At some point you will probably want to transfer your Joomla installation from your local computer to a host. Some guides how to do this can be found on the Joomla forums: see FAQ’s forum.joomla.org/index.php/topic,5556.0.html and forum.joomla.org/index.php/topic,5703.0.html

Installing a Joomla Site on a Hosting Account

So let’s assume you either have a hosting account, or are going to get yourself one. There are some minimum requirements for Joomla to run, and they are slightly different for the different versions.

For information, here are the minimum requirements for Joomla 1.5

You must ensure that you have MySQL, XML and Zlib support built into your PHP. For assistance in making sure you have the proper support I recommend that you refer to the Joomla Help Forums, specifically help.joomla.org/content/view/34/132/

For Joomla 1.5 it’s recommended you have PHP 4.4.3 or above (for enhanced security).

A thread on the Joomla forums lists various hosting companies who are active Joomla community members. The list can be found at forum.joomla.org/index.php/topic,6856.0.html

Note that from now on, the steps are more or less the same whether you are installing Joomla on a localhost or on a remote web server.

Getting the Joomla Files

This part is easy. Head on over to www.joomla.org and you will see a link to the download section on the home page, it looks Figure 3.3.:

Download button
Figure 3.3
Download button at www.joomla.org

The version number is the number given. This image shows that it’s the 11th release in the 1.0 series.

Or you can head straight to the Forge and you will see all possible downloads:

forge.joomla.org/sf/frs/do/viewSummary/projects.joomla/frs

All versions are here as well as various upgrades from one release to another, important if you already have an installation of Joomla.

Important Note:
You cannot upgrade from Joomla 1.0 to Joomla 1.5. There are significant enough changes in the code that simply over writing files would break your site. The developer team has carefully chosen to talk about migration.

“Joomla 1.5 does not provide an upgrade path from earlier versions. Converting an older site to a Joomla 1.5 site requires creation of a new empty site using Joomla 1.5 and then populating the new site with the content from the old site. This migration of content is not a one-to-one process and involves conversions and modifications to the content dump.”
dev.joomla.org/component/option,com_jd-wp/Itemid,33/p,107/

This has been a deliberate choice to minimize the number of users who might attempt the “overwrite the files” technique. More can be found in the forum:

“Joomla 1.5 is so significantly changed from 1.0 that there is no ‘upgrade’ path. This is the reason that we are providing a migration path. The concept is to build a new site and to migrate data from the old site. Extensions need to be installed and configured as if the site is new. The core data migration does reconstruct menu items for core elements and also keeps core module records with configuration settings.”
David Gal – forum.joomla.org/index.php/topic,63232.0.html

Unzipping the files

You need to unzip, or unpack the big Joomla files you have onto your server. If you are running as a localhost, your server would be the WAMP directory mentioned above. If you are on a web host, you will need to upload the file and then unpack it. Perhaps the easiest way to do this is with cpanel’s file manager. Almost all hosting companies provide it. Use this file manager to upload the zip file to public_html (or whatever you have on your host). You can then use it to extract the files. Just click on the name of the file and the option to extract will appear to the right as shown in Figure 3.4.

Extracting a file in Cpanel's file manager
Figure 3.4
Extracting a file in Cpanel’s file manager

Note:
I don’t recommend using Fantasico. Its an instant installer of common open source scripts. Many hosts provide it but don’t always have the most current file releases.

Installing Joomla through a Web Browser

If you have got this far that means you have unzipped the Joomla package to either a remote web host or your local computer. Now for the fun stuff!

Using your browser of choice (Firefox of course), navigate to the location of all the Joomla files. In my case here it is http://localhost/Joomla. You will see the first installation screen (Figure 3.5).

The Choose Language Screen
Figure 3.5
The Choose Language Screen

Figure 3.5 is the first look at some of the internationalization features of Joomla 1.5, you can select amongst many languages for the installation instructions. After you have selected your language the next screen you will be presented with (Figure 3.6) is the Pre-Installation Check Screen.

The Pre-Installation Check Screen
Figure 3.6
The Pre-Installation Check Screen

A critical part in the installation process, this checks if all the minimum system requirements are met.

The first set are required minimums, if they are red (not met) then you need to find a new environment (change hosts), talk them into changing their environment (upgrading PHP for example). Note that the last item is a permissions issue on a file that is much easier to rectify. You can usually change permissions through the cpanel provided by your host. This is a tool that is standard with almost all hosting companies.

The second set is recommended settings. If you don’t meet them you can still install Joomla but it you experience problems with functionality and security.

Once you are green to go, click next which will bring you to the License Screen (Figure 3.7).

The License screen
Figure 3.7
The License screen

Joomla is released under a GNU/GPL license. One of the most common questions regarding this license is “can I remove the footer link that says Powered by Joomla”. It’s actually perfectly OK to do this, you just have to keep the copyright statement in the source code. However, I would recommend that you keep the link.

Why?

Joomla is an open source project; it receives no funding from any kind of revenue from selling its software. The bottom line is that thousands of developers around the world are developing this software that you are using right now. If you had to buy it from a commercial company, it would cost over a million dollars, but you are getting it for free. In return, keep the link, it will help the project gain in popularity and grow. Don’t hide the fact that you are using Joomla, be proud of it! And don’t be concerned about any kind of SEO dilution with an extra link off your page. Links to authoritative sites actually help you SEO! If you are feeling generous, make a donation to the project.

OK, I’ll get off my soapbox now…and move to the next screen Database Configuration (Figure 3.8).

The database configuration screen
Figure 3.8
The database configuration screen

This is one of the main pages of the installation process; it’s where you need to enter important information about the database that your Joomla site will use. Note you will see a drop down for the database type. Joomla 1.5 only really runs on SQL, but some of the foundation has been laid for the next release, 2.0, to use more types, for example Oracle.

The hostname will almost always be “localhost”

The Username and password will have been provided by your hosting company, usually in an email you got when you created the account.

If you are installing on a localhost using WAMP or XAMPP, the Username is usually “root” and the password is nothing/blank.

Once you have entered this information, click Get Privileges and the Joomla installer checks to see if that user has rights to create a database. You should see the message in Figure 3.9

User privilege confirmation dialog
Figure 3.9
User privilege confirmation dialog

If you made an error, or the user does not have sufficient permissions, then you get the message in Figure 3.10 (after a small delay).

User privilege error dialog
Figure 3.10
User privilege error dialog

If the user you have does not have permissions then you can ask your hosting company to pre-create a SQL database for you to use.

Available collations refer to various character sets available for different languages. When you click the button you get a list of what is available similar to Figure 3.11.

Collation options
Figure 3.11
Collation options

Pick a Database name for the SQL database that Joomla will use. Use some sort of name that is not confusing. Other scripts use SQL databases and before you know it you might have several on your server and will need to tell them apart. Don’t use spaces in the name.

If you are running several Joomla sites but only have access to one database, you will need to use a table prefix to distinguish them. You’ll need to enter the prefix in the advanced settings (Figure 3.12)

Note if your user did not have database creation privileges and you were provided with a database instead you would obviously put that in as the name.

The advanced settings are concerned with what content the site starts with and also the table prefixes mentioned previously.

Advanced configuration settings
Figure 3.12
Advanced configuration settings

If you have an existing site and you are reinstalling over the top, you will need to select Drop Existing Tables. If you need to keep a back of them, select Backup Old Tables. Using “jos” as a table prefix is conventional unless you have multiple sites in the same database.

FTP Configuration

You may have noticed that this step, FTP Configuration is grayed out on these screenshots. That’s because the installation wizard cleverly detects whether you are on a localhost or on a liver server. If you are on a windows localhost, like I was when I took these screenshots, you don’t need an FTP configuration; it doesn’t apply, so the installer skips that step.

So if you are on a remote host, the screen looks like Figure 3.13.

FTP configuration screen
Figure 3.13
FTP configuration screen

What is this FTP filesystem anyway?

The previous version of Joomla, the 1.0.X series had issues with ownership of files on a server. It’s a little bit technical, to give you an idea, its possible for files on an Apache web server to be owned by a user called “nobody”. Go figure. Anyway, there would be conflicts with who owned files, whether it was the FTP account or Apache itself. This would lead to permission problems when Joomla would try to upload files.

The solution in 1.5 is for Joomla to actually use an FTP account for everything, and then there are no conflicts.

If that was all a little confusing to you, just create an FTP account for Joomla to use and enter the details in this screen.

Main Configuration

Main configuration screen
Figure 3.14
Main configuration screen

The Main Configuration page determines how you will insert content into your site. You have three choices:

  • Install Sample Data
    This installs the default Joomla content that you have probably seen all over the web with “Welcome to Joomla”. Note that is also includes all the menus, navigation links and sections/categories. If you are learning how to use Joomla this is highly recommended. Its easier to adapt and revise than to start from scratch.
  • Load SQL script
    This is a SQL file that might have a customized set of content
  • Migration from previous versions
    This is a special function that is part of a process to migrate a Joomla site running on 1.0 to 1.5 and requires a special component to do so. This is discussed more in the Appendix.

Give your site a name (pay attention to SEO keywords) and then enter the super administration information. This will be the first user in the site and automatically gets that status. Note that if you don’t change the password, it will use the one shown on the left. Make sure you write it down!

Cross your eyes, close your fingers and click next. Hopefully you will see the screen shown in Figure 3.15.

Installation confirmation screen
Figure 3.15
Installation confirmation screen

If you do get this result, you can investigate different language options, view the site or jump right to the administration of your site.

If you don’t get this page, then you have some work to do. Often issues arise because of server environments. If the solution is not obvious, a useful step is to copy the error message or the main part of it and then search for it both on the Joomla help forums, forum.joomla.org and in Google. The chances are if you get an error, someone else has before you.

A useful trick is to include the message in double quotations in the search box so you search for the exact phrase.

Guide Summary

  • Installing Joomla is a three step process:
  1. Uploading the Joomla package
  2. Unpacking it
  3. Using a browser based wizard to complete installation
  • You can install Joomla on a hosted web server or you local (personal) computer
  • To run Joomla locally you will need some free 3rd party software
  • You cannot upgrade from a Joomla 1.0.X site to a 1.5 version, you must use a special migration tool.
  • Joomla is created by a world wide community of volunteers. Show your support by showing on your website that it is powered by Joomla.

Leave a comment »

Hello world!

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

Leave a comment »