PHP 4.4.4 and Apache 2.2 on Win32

I have just spent more than the normal time to install Apache + PHP on Windows. Well, for me at least, as a PHP trainer. It’s quite embarassing if you ask me.

Anyway, I am writing this quick post just to let you know which Apache to download. In Apache download page today, there’s a few versions available – version 1.3, version 2.0, and version 2.2

Usually I will just fetch Apache 1.3 directly, and configure PHP as module. But currently Apache only provides version 1.3 as unix source – which is fine on my Linux box. So I went to fetch Apache 2.2 – just to find that it won’t load PHP.

So to cut in short, if you are using Windows, download Apache version 2.0 and you’ll have Apache + PHP running in no time.

Why the hell am I installing Apache + PHP on Windows? Well that’s another long story I will keep for another post. My laptop hard disk crashed on me and I decided to run fully on Windows, especially I will need a lot of digital imaging capabilities on the slow laptop – I’ve just taken photography as another hobby that I hope will make me money some day.

Update 23 September 2006:

As it turns out, when downloading MySQL you might as well go for the latest version. This is why:

MySQL currently only provides version 4.1 and above. The difference can’t be seen by anyone else except those using PHP. For MySQL versions >= 4.1 PHP utilizes the mysqli extension, because the default built-in API in PHP (MySQL 3.x) doesn’t work very well (MySQL changed certain things). The problem: PHP 4.x does not provide libmysqli.dll. Only PHP 5.x does. So the final summary is:

  1. PHP 5.x
  2. MySQL 5.x
  3. Apache 2.x

The obvious thing that I noticed is the problem with MySQL passwords. If you’re worried that your host server might have older versions, you can always write your code by utilizing ADOdb.

The problems described above does not effect *NIX users, as all modules can be compiled manually along with PHP.