Sunday, 17 April 2011

Install Joomla! 1.6 on IIS 7

In the previous post Joomla! Installing XAMPP on Vista I described installation of the XAMPP package for Windows 7 and Vista. XAMPP package installs Apache web server, MySQL database, phpMyAdmin, FileZilla FTP Server and many more. With XAMPP it is really easy to install and configure Joomla!.

In this post I will show how to install Joomla! 1.6 on IIS7 on Vista or Windows 7.  I will be performing installation on Windows 7 with no IIS installed. We will install PHP support for IIS 7, MySQL database (I will not be covering installation of Joomla! with SQL Server just yet), phpMyAdmin for maintaining databases.

In my first attempts. I tried to install Joomla! using Windows Platform installer from Microsoft/web site, which did not work completely. Installer did not install properly IIS, failed to register PHP with IIS 7, did not configure MySQL and I got mixed up with credentials for Joomla! and MySQL. My decision was to start over and  install all required components manually.

Before we begin

In my explanations of the steps below I will assume that you are familiar with installation of basic windows components. I will only note most important points of the installation. If you require detailed explanation of the some of the installs I will provide reference section with links to sites with more detailed steps.

Install IIS 7

In this step we will perform basic installation of IIS 7. Open Control Panel>Programs>Program and Features>Turn Windows Features on or off.

image

Navigate to Internet Information Services and make sure you tick it first. It will select all required modules to run IIS7. Then expand tree to navigate to Application Development Features and tick CGI. I will be also doing ASP.NET development so I ticked ASP.NET Development and this also selected .Net Extensibility and other required modules. If you do not need any of the .Net features, don’t tick it. CGI component is needed to use FastCGI module of the PHP package, which we will be installing in the step below. Click OK.

image

When installation is complete open http://localhost to see if it installed OK. You should see similar screen to one below.

image

Installing PHP support for IIS7

Now we are going to install PHP support for IIS 7. Download latest PHP windows package from php.net site.

image

Now follow installation Wizard steps.

image

In the Web Server Setup select IIS FastCGI module. Click Next.

image

I selected to install all items including Register *.php to open automatically with PHP.

image

Click Finish.

I would also suggest installing PHP Manager for IIS package. It will add PHP configuration module into IIS Console.

image

This is an example PHP configuration screen. I find it is handy when you need to do some tweaks to PHP configuration.

image

Copy Joomla! CMS files to ISS 7

In this step we are going to copy Joomla! package files into C:\inetpub\wwwroot folder and create JoomlaDev Web Application to see if we can run PHP web sites. Configuration of Joomla! site will be done after completing of the MySQL database server installation. Download Joomla! CMS package from the joomla.org site. Unzip it and copy folder to ISS7 directory C:\inetpub\wwwroot. I named folder as JoomlaDev. Open IIS Management Console. Right click Default Web Site and select Add Application.

image

Enter fields as shown above if you are using the same names. Click OK.

image

JoomlaDev Application is created. Use Browse to open the site. If everything OK you should see the screen below.

Image[46]

Install MySQL on Windows 7 or Vista

Congratulations if you got that far, but don’t get too excited as we got a little be more work to do. Now we are going to install MySQL server. I am not going to cover using Joomla! with SQL Server here. This can be a topic for future posts. We need to  download, install and configure MySQL database and phpMyAdmin package for managing databases. Get MySQL Community Server from mysql.com site. PhpMyAdmin can be downloaded from phpmyadmin.net site.

image

Run MySQL Installation Wizard.

image

Run through wizard steps and click Install at the end.

image

Leave Launch the MySQL Instance Configuration Wizard tick box on and click Finish.

image

This will open MySQL Server Instance Configuration Wizard.

image

We will go through the Detailed Configuration steps. Click Next.

image

This is a Development Machine, so this option is what we need.

image

Leave as it is on Multifunctional Database and click next.

image

Installation Path as a location for database files will be fine.

image

I do not expect a lot of connection during development work, but I like to have more options at hand so I selected Online Transaction Processing Option. You can select what is more suitable in your case.

image

All looking good. Tick Add firewall exception for this port to enable access for phpMyAdmin. phpMyAdmin uses TCP/IP connection by default. If you are worried about security you can setup phpMyAdmin to use socket connection. It is possible in our case to use socket as we are installing MySQL server on the same machine as IIS 7 web server.

image

I am developing website in English and Russian Languages so the second option is the best one for me. Click Next.

image

We will set our Database Instance Name as MySQL. I like to perform some commands in the command prompt so I also ticked Include Bin Directory in the Windows PATH.

image

Enter a password for root. This is a development database and will not be accessed outside development machine. So I did not ticked Enable root access from remote machine or Create An Anonymous Account. For build and testing servers I will use a different installation of MySQL and IIS 7. Click Next.

image

Excellent! Click Execute when you are ready.

image

We are done! Click Finish.

Install and Configure phpMyAdmin

Installation of MySQL Server is done. Now we are going to configure phpMyAdmin package, which will help us to manage MySQL Databases. If you haven’t downloaded phpMyAdmin from previous step download it from phpmyadmin.net site. Unzip package and copy it to C:\inetpub\wwwroot directory. Open IIS 7 Management Console and create new web application in a similar way how we created web application for our Joomla! install.

image

I named folder and Web Application as phpMyAdmin. After clicking OK use browse to open http://localhost/phpMyAdmin/. You will get the screen below.

image 

Enter root as username and your root password, Click Go.

image

I got in! I was really impressed that without any additional configuration phpMyAdmin detected local MySQL Server and the setup is done!

Conclusion

Congratulations ones more time on the going through this rather lengthy post. Don’t get disappointed that you do not see Joomla! configuration steps here. There are very easy and straightforward. I am planning to post Joomla! configuration steps in the future post. This and the other posts will be part of the Creating Joomla! Development Environment series. Don’t forget to check out some references for more information.

References

6 comments:

  1. Thank you so so so much
    i see this post is very helpful
    thank you again

    Sireen
    from palestine

    ReplyDelete
  2. Thanks a billion for sharing such a great article! I enjoyed a lot :) - Layla

    ReplyDelete
  3. thanks it helped me a lot :D

    ReplyDelete
  4. Nice Post. Thanks for share with us. But if you want to Learn how to install Joomla in a Linux Server, CPanel Utility & GoDaddy, click that link and watch our video tutorial.

    ReplyDelete
  5. Joomla is an award winning content management system. which is used to build powerful website.
    best web design services | professional web development firm

    ReplyDelete