The installation of Joomla! is a matter of two minutes. To install Joomla!, it would be best to have the dream team mentioned in Chapter 1—Apache, MySQL, and PHP—installed as the development environment. Of course, Joomla! does not make any special demands on Apache or MySQL.

So you can also use any other web server that works with PHP. PHP has to be of version 4.1.2 or higher and it should be compiled with support for MySQL and Zlib. Zlib is a library that makes it possible for PHP to read file packages that are compressed with the ZIP procedure.

The installation has to be done on a server that can be accessed over the Internet, usually located at the Internet Service Provider. But before we venture into the wilderness of the Internet, we should first practice on our local computer.

This is an advantage as there are no connection fees, it is very fast, and we can practice at a leisurely pace. We can even have a small local network at home where we can install Joomla! on one computer and access it from another. If you install Joomla! on a server on the Internet, you should always use the latest stable version.

To install Joomla! locally, we have to set up the appropriate server environment.

Windows

Due to its user-friendliness, majority of computers work with Windows as operating system. Unfortunately, Apache web server, MySQL database, and PHP are not included with Windows. A practical approach would be to install each of these programs separately, or grab a preconfigured package.

Log on to the system in administrator mode. To check your account type, click Start | Control Panel | User Accounts and change it to Computer administrator if required.

XAMPP for Windows

XAMPP is a project of Kai 'Oswald' Seidler and Kay Vogelgesang. These two have been creating a complete development environment with the ingredients Apache, MySQL, PHP, Perl, and various extensions for several years. XAMPP can be downloaded from www.apachefriends.org as zip archives for various operating systems.

This is an immense advantage for people like you and me, who are primarily interested in Joomla! and not so much in how all of it works. Also, the entire installation can be removed from the computer with one mouse-click without leaving a trace. To download and install XAMPP:

Open the setup_xampp.bat file from the xampplite folder. XAMPP makes no entries in the Windows Registry and sets no system variables.

PHP starts automatically as a module. To start Apache, open the apache_start.bat file from the xampplite folder. A command prompt window opens, which indicates that Apache has started.

Start MySQL by opening the mysql_start.bat file. As opposed to Apache, MySQL has a separate script to terminate itself. To accomplish this, open the mysql_stop.bat file.

Open the http://127.0.0.1/ or http://localhost/ page to check if XAMPP is correctly installed. On the XAMPP start page, click on the English link and the start page shows up.

The document directory of your website is htdocs in the xampplite folder. This directory contains all the pages that are accessible by a remote computer on the Internet. More information on usernames and passwords can be found in the readme_en.txt file. To uninstall the package, close all current servers and delete the xampplite directory.

Linux

With Linux everything is usually simple. Different distributions with different standard configurations are available. Usually our dream team is pre-installed and just needs to be started. An XAMPP version can also be installed for Linux. My opinion, however, is that it makes more sense to grab the original programs. The installation is done by a package manager and is very simple.

SUSE (10.x) OpenSUSE

You can check whether Apache, MySQL, and PHP are already installed with the help of the YaST configuration program. If that is not the case, select the appropriate packages for installation and let YaST install them. These are the packages in detail:

apache2

apache2-level

apache2-mod_php4

mysql

php4-mysql

You can find these packages via the YaST interface on your SUSE distribution media or on the Internet. Start the Apache web server with the /etc/init.d/apache2ctl start command and the MySQL database server with the /etc/init.d/mysql start command. You can stop both the servers with the stop command. By typing help, you get an overview of all parameters.

Debian/Ubuntu

With Debian and with Ubuntu, apt is the agent of choice. You can install Apache, MySQL, and PHP with the apt program. apt-get install [packetname]

You can find these packages automatically over the Internet or on the Debian CD/DVD by using apt. Now start Apache with the /etc/init.d/apachectl start command and MySQL with the /etc/init.d/mysql start command.

Your Own Server at a Provider

If you have rented a complete server from a provider, then you usually have a shell entrance and free choice of the Linux distribution that you want to use. In addition, the system is preconfigured and contains all necessary file packages and configurations.

Usually special administration interfaces, such as Confixx or Visas, are used for configuring these servers. You can comfortably start, stop, and configure your server and the Apache and MySQL services from a browser interface with this tool.

On a Virtual Server in the Net

This topic is very complex, since there is an unmanageable number of providers and an even more unmanageable combination of installed Apache, PHP, and MySQL versions and Webspace administration tools such as Confixx and Visas. These are the sticking points:

A PHP safe mode, possibly activated in the php.ini

Prohibited conversion of URLs with Apache because of the non-activation of the rewrite engine

Directory rights in Linux set differently than in Windows

In principle the simplest approach that actually always works is the following:

Load the Joomla_1.0.0-Stable.tar.gz file onto your local PC and unpack it in a temporary directory.

Load the just unpacked files by means of FTP onto your rented server. The files must be installed in the publicly accessible directory. These directories are usually named htdocs, public_html, or simply html. You can specify a subdirectory within the directory into which you install your Joomla!. Many web hosts allow you to link your rented domain name to a directory. This name is necessary to call your website from a browser.

You have to find out what your database is called. Usually one or several databases are included in your web-hosting package. Sometimes the user name, database name, and password are fixed; sometimes you have to set them up. There is usually a browser-based configuration interface at your disposal. You will need these data for Joomla!'s web installer.