Installing Joomla on Windows - IIS

Joomla version 1.0 is end-of-life and are no longer supported. Please use Joomla 3.x instead.

Moderator: General Support Moderators

Forum rules
Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting, this means YOU.
Forum Post Assistant - If you are serious about wanting help, you will use this tool to help you post.
User avatar
Joomla! Master
Joomla! Master
Posts: 15745
Joined: Thu Aug 18, 2005 10:41 am

Installing Joomla on Windows - IIS

Post by Robin » Thu Apr 06, 2006 1:27 pm

Installing Joomla on Windows (2000/XP/2003) - IIS

Note; taken from, by Phill Hardstaff

A first attempt at a definitive guide to installing joomla on Windows, any comments appreciated. There is a real mix of info about installing on Windows out there, but nothing that goes from start to finish (well that I know of anyway) Once I get this right any ideas on where to post it ? I notice there is no separate forum here for Windows users, that might be a place to start ?



Installing joomla Server on Windows 2000, XP and Windows Server 2003

This has been tested on Windows 2000 and XP, should work fine on Windows 2003 Server. I am assuming an install into a directory and not into the root of the site, to install into the root just follow the same instructions and substitute your web server root directory, usually c:\inetpub\wwwwroot , I am assuming this is where your IIS root is. For these instructions I am assuming an install to c:\inetpub\wwwwroot\joomla.

Install IIS

Make sure you have IIS running, Settings Control panel – add or Remove software - Add or remove Windows Components - Internet Information Services (this is called something different under Windows 2003 server ?) Once installed http://localhost will bring up a web page saying your web service is running or something similar, do not go any further if this is not the case.

Install PHP

Once you have a web server running and you can browse http://localhost then it’s time to install PHP. Download PHP from the best way to do this for IIS is to download the PHP x.x.x Installer, which will install PHP and configure IIS at the same time.

Test PHP

Make sure your PHP installation works, copy the following code into a text file and save it as c:\inetpub\wwwroot\test.php

Open your web browser and open http://localhost/test.php and you should get back a nice page with all the info about your PHP version.

Find php.ini, usually in your Windows directory, ie c:\wnnnt or c:\windows and change the line that says

error_reporting = E_ALL; display all errors, warnings and notices

and change it to

error_reporting = E_ALL & ~E_NOTICE

so that PHP sow all errors, except for notices, you will probably want to change this to just errors after you are happy your joomla site is working OK.

error_reporting = E_ERROR

Install MySQL

Download and install MySQL from

Once installed run c:\mysql\bin\winmysqladmin.exe, this will install Mysql as a service, you cannot really do any admin with this program but you can see what’s going on.

A default install of MySQL has a blank password for the database user root, this should be changed ASAP.

Mysqladmin –uroot password new_password

Create the joomla DB by using c:\mysql\bin\mysqladmin.exe (this is optional, the web based installer will do this for you but it’s nice to know how to make a table)

mysqladmin -uroot -ppassword create joomla_database_name

so, if your user name was root and password was tst321 then this would be

mysqladmin -uroot –ptst321 create joomla_database_name

Set up joomla

Unzip the joomla files to the directory where it will be used, in our case

C:\inetpub\wwwroot\joomla (which will be http://localhost/joomla ) when you have done this it should look something like this

Volume in drive C is S3A1293D005
Volume Serial Number is E44E-B32B

Directory of C:\Inetpub\wwwroot\joomla

30/03/2004 09:14 AM .
30/03/2004 09:14 AM ..
30/03/2004 09:13 AM administrator
30/03/2004 09:13 AM classes
30/03/2004 09:13 AM components
06/02/2004 01:35 AM 3,069 configuration.php-dist
30/03/2004 09:14 AM 0 dir.txt
30/03/2004 09:13 AM documentation
30/03/2004 09:13 AM editor
19/09/2003 11:08 AM 1,433 globals.php
22/12/2003 09:37 PM 687 htaccess.txt
30/03/2004 09:13 AM images
30/03/2004 09:13 AM includes
27/02/2004 03:53 AM 5,208 index.php
24/12/2003 10:20 PM 2,794 index2.php
30/03/2004 09:13 AM installation
30/03/2004 09:13 AM language
15/12/2003 01:05 PM 1,095 mainbody.php
30/03/2004 09:13 AM joomlats
30/03/2004 09:13 AM media
30/03/2004 09:13 AM modules
24/12/2003 09:39 PM 3,250 offline.php
07/02/2004 10:58 PM 6,925 pathway.php
21/01/2004 10:32 AM 304 robots.txt
30/03/2004 09:13 AM sql
30/03/2004 09:13 AM templates
30/03/2004 09:13 AM uploadfiles
27/02/2004 09:35 PM 704 version.php
11 File(s) 25,469 bytes

Rename configuration.php.dist to configuration.php

OK, now to change some permissions, this is very important that you do this before you proceed any further.

Right click each of the following directories, select security and make the sure that the “Internet Guest Account” (usually IUSR_computer_name) has the following permissions.

Read and Execute
List Folder Contents

i.e. everything EXCEPT full control. Do this for these directories and files.


OK, lets see what we got, rather than manually editing configuration I found that using the web based installer works best, it will also create your tables in MYSQL for you rather than using the sql script ? This is why we have set configuration.php to be writable, do NOT forget to change this to read-only later !!!

Open your browser and go to http://localhost/joomla/installation/install1.php and you should see the “Welcome to joomla Open Source Installation” page, if not you need to go back and find out why.

Assuming we have this page, plug in our data for the database, if you are running MySQL on the same machine as joomla then the host is localhost. Do not put the name of the machine. You will probably want to check Install Help Data and Sample Data.
Click next.

OK, if you get to the next page that’s good, it means everything you entered about your database was correct, if you have an error then you need to check what you entered on the previous screen, OK, we are not out of the woods yet.

On the next screen enter a name for your site.

Click next.

On the next screen you have to enter some paths, DO NOT change the defaults unless you are certain they are wrong as in 99% of cases they will be correct. You might want to change the URL from localhost the FQDN of your system and the password but that’s about it.

Click next

OK, if you made it to install4.php that’s good, if you take a look at configuration.php with a text editor you will see your config changes in it. Do not open this with Wordpad, it will screw it up, also, it will look funny in Notepad because it is a Unix type text file, usually you won’t have to touch this file anyway.

Delete the installation directory ( c:\inetpub\wwwroot\installation )

Right Click configuration.php, select properties, and change to read-only. That means on the first tick Read-Only.

Click Run.(back in your browser at install4.php)

You should now see that standard peeklime joomla Home page. Make sure you can run the admin program, click on administrator, if you get an error it just means you have not set up index.php to be a default page, try

http://localhost/joomla/administrator/index.php rather than


To make your system recognize index.php as a default page, do this.

Start - Settings – Control Panel – Administrative Tools – Internet Information Services
Open out to default web site
Right click default web site
Documents tab
Close everything

Trouble Shooting Guide

1) You cannot get into the admin page, you see a few errors fly up and then you are back at the logon screen.

The default PHP installer does not set permission for the c:\php\sessiondata directory so that the “Internet Guest Account can write etc to this directory, right click c:\php\sessiondata and select properties, give the Internet Guest account

Read and Execute
List Folder Contents

2) Fixed something ? send it to me so I can add it here !!

Et Voila, that’s it, you should have a 100% functional joomla Site.

There is a little problem with PHP that it generally assumes that it is installed on Unix. Therefore, one of the default settings in the php.ini file is:

session.save_path = /tmp

This would be fine on Unix because this directory is always there, but not necessarily so on Windows. The fix is to create a subdirectory under the PHP directory, i.e. "C:\PHP\Temp" Then, change the session setting:

session.save_path = "C:\php\temp"

If this is not correct, Joomla will not work correctly! Probably, one will have problems logging in as ADMIN.
Last edited by ChiefGoFor on Tue Jan 16, 2007 1:22 pm, edited 1 time in total.

User avatar
Joomla! Master
Joomla! Master
Posts: 15745
Joined: Thu Aug 18, 2005 10:41 am

Re: Installing Joomla on Windows - IIS

Post by Robin » Sun May 21, 2006 2:05 pm

Credit to Justin for the following extra information with regards to installing PHP and mySQL on Windows:
Firstly, I might add to that post, a reference to the following very useful resource for installing PHP and mySQL on Windows. ... ing-11.php

Here they discuss in detail how to connect PHP and IIS and all the configuration changes in the php.ini file that are needed to make PHP and IIS work together.  Also, there are a few changes that are required to get PHP to talk to mySQL correctly, linking in DLL's and setting path variables correctly.  This helped me to resolve a particular problem in the Joomla installation where install2.php returned nothing (just a blank page), seemingly as a result of not being able to create the Joomla database.  This change to the extensions used in php.ini is also detailed in other Joomla forum posts, viz.,10490.0.html

User avatar
Joomla! Master
Joomla! Master
Posts: 16556
Joined: Thu Aug 18, 2005 7:13 am

Re: Installing Joomla on Windows - IIS

Post by Tonie » Mon Aug 28, 2006 5:41 pm

Made these notes two months ago, will publish them now. Haven't had time to look over them again, since the install in question has already been nuked. Please note that I'm not a wizard on IIS, just got it to work without too much trouble.

Installing Joomla on Windows 2003

* Install a default Windows 2003 server with Service Pack 1 integrated.
* Run Windows update and install the latest patches.

Install IIS

* Select 'Start' --> 'Control Panel' --> 'Add or remove programs'.
* Select 'Add/Remove Windows components'.
* Select 'Application Server' and click 'Next'. Note: You need the Windows CD that was being used for the Windows installation to do this.
* Click Finish.

Install PHP

* Download PHP from The installed version for this tutorial is PHP 5.1.4. Choose the PHP 5.1.4 installer. This version will also configure IIS for you.
* Download 'Collection of PECL modules for PHP 5.1.4' and ''. There are a few files in there we need later on.
* Select 'Advanced' on 'Type of installation'.
* Select 'C:\PHP' on 'Destination folder'.
* Select 'Yes' on 'Do you want to create backups.
* Select 'C:\PHP\BACKUP' for the destination directory.
* Select 'C:\PHP\UPLOADTEMP' as the temporary directory for file uploads.
* Select 'C:\PHP\SESSIONDATA' as the directory for session storage data.
* Currently I don't have a SMTP server, so the settings will stay default.
* Select 'Display all errors, warnings, and notices'. Later on, we will trim this down to a lower level.
* Select 'Microsoft IIS 6 or higher' on 'Server type'.
* Select 'php' on file extensions interpreted by PHP.

If all is correct, the notice 'IIS scriptmap configuration completed'.

* Select 'No' on 'Would you like to register CScript as your default host for VBScript'.
* Note that php.ini is automatically copied to your %WINDIR%, C:\Windows by default on a Windows 2003 server.
* Create a directory 'C:\PHP\EXT'.
* Extract '' and copy 'mysqli.php' and 'mysql.php' to 'C:\PHP\EXT'.
* Open C:\WINDOWS\PHP.INI' in a text editor.
* Change the 'extension_dir' configuration to 'extension_dir = "C:\PHP\EXT"'
* Add the following lines under '; Windows Extensions'
* Restart IIS

Configure IIS

When opening a browser on the server and typing http://localhost, a message will be visible about starting IIS manager. This message is from the file iisstart.html in the root of your website at c:\inetpub\wwwroot.

* Select 'Start' --> 'Run'.
* Type 'inetmgr' and click on .
* Open your server, and select 'Web service extensions' with the right mouse button.
* Select 'Add a new web services extension'.
* Type 'PHP' on 'Extension name'.
* Click 'Add'.
* Browse to 'C:\PHP\PHP-CGI.EXE' and select it.
* Select 'Set extension status to allowed'.
* Select 'Web site' with the right mouse click in IIS manager and select 'Properties'.
* Go the tab 'Documents'.
* Click on 'Add' and add 'index.php' as a 'Default content page'.
* Click on 'Add' and add 'index.html' as a 'Default content page'.
* Move index.php to the top, and index.html right below it.
* Create a file called 'info.php', with the following code:

* Call the file from your browser, and the php configuration should be visible.

Install Mysql

* Download Mysql-win32 from
* Open the zip-file and start the installer.
* Select 'Default' on 'Setup type'.
* Your own choice if you want to create a Mysql account.
* After installing, it should start with the 'Mysql Service Instance Configuration Wizard'.
* Select standard configuration, after all it's only a test setup.
* Select 'Install as Windows service'.
* Select 'Include bin directory in Windows path'.
* Enter a new root password, don't forget this. The service is automatically started.
* Open the Mysql command line client from the Start menu.
* Type 'create database website'.

Install Joomla

* Download the latest version of Joomla!. At the time of this tutorial, it was 1.0.10.
* Create the directory 'C:\INETPUB\WWWROOT\JOOMLA', and unpack the Joomla! archive file there.
* Start the browser and go to 'http://localhost/joomla'. If all is correct

Disclaimer: This is not an ideal server setup. This tutorial is made to show that it is possible to use Joomla on the latest Windows version. The reason for this install is that we want to have an IIS server to test possible issues with Joomla. It is only tested with Windows 2003.


Return to “Installation - 1.0.x”