Archive for March, 2010

PHP 5.3.2 x64 (64 Bit) Windows Binary

Some of you requested that I compile 64 bit Windows binaries for PHP 5.3.2 since they are not officially available from the PHP website. And so, I did and you will find the download link at the end of this post. But first let me tell you about a bug in this release that may or may not affect you. 😀

I compiled PHP 5.3.1 a few weeks ago but noticed that scripts that used the mysql extensions were not working. I thought this was because of a problem with the mysql extensions in this particular build, since the scripts were working fine with a 64 bit build of PHP 5.3.0 that I downloaded from

Yesterday, after I compiled PHP 5.3.2, I noticed the same problem. And after a lot of messing around I realized that the problem was because PHP was not resolving “localhost” to “” and instead resolving to the IPv6 address “::1”.  As mentioned before, this problem is not there in PHP 5.3.0, so I believe its a bug in PHP.

A good workaround for this problem is to comment out “::1             localhost” in your “hosts” file (C:\Windows\System32\drivers\etc\hosts) if it isn’t already, and uncomment “       localhost” if it is commented out by default, as is the case with Windows 7. Another workaround is to use “” in your PHP scripts instead of “localhost”.

Also, I tried compiling the mysql extensions with libmysql instead of mysqlnd to see if the problem persisted. I was able to compile the php_mysql extension successfully with libmysql (the php_mysqli and php_pdo_mysql extensions failed to compile with libmysql), and noticed that the problem wasn’t there. Scripts that used the php_mysql extension to connect to the mysql database with “localhost” defined as the database host, were working fine. So, I have included the php_mysql extension compiled with libmysql with this release.

So far, this “localhost” resolution bug is the only one that I have come across in this release.

Anyway, this release also includes the php5apache2_2.dll module for use with 64 bit versions of Apache 2.2.

And here is the configure log for anyone interested in it.


CRC32: A356949C

MD5: F16FF84C27CBB642B4ED1E25FE997F82

SHA1: DCCF68C0935ECE581D1F0208F6E8A27C265CBF03

ModSecurity 2.5.12 x64 (64 Bit) Windows Binary

I found out recently that ModSecurity 2.5.12 was out and so, as before, I compiled a 64 bit binary for use with 64 bit versions of Apache 2.2 on Windows. Once again, it was compiled with MSVC 9 (Visual C++ 2008) and includes libxml2 2.7.6 and lua 5.1.4.

I am currently using it myself with Apache 2.2.15 on Windows 7. For installation instructions, make sure you read the “README_FIRST.txt” file first. 😀


CRC32: 71D2A7FD

MD5: A86A2779191FBE7B6352ACEE7C3F7345

SHA1: 7A3329199794C967706610E2A25453402DCEBC27

Apache HTTP Server 2.2.15 x86 and x64 Windows Installers

Apache HTTP Server version 2.2.15 was released recently. It includes a number of important security and bug fixes. A changelog with further details can be found here. Thanks to Scott for notifying me about this new version. 😀

Below you will find the 32 bit and 64 bit windows installers. Like the previous releases, the binaries have been compiled with Visual C++ 2008 (VC9). The installers and binaries are digitally signed and the signatures should appear valid as long as your Windows is up to date.


CRC32: C7339B42

MD5: B471C2DE3F9F79CB6AD2A60D188054CB

SHA1: A00486B87F85DF2C155598F2202223009AC8E3F1


CRC32: 24406DA6

MD5: 4BFB3105F7F720E23981784D341B13AB

SHA1: 24E9FCC1EC4E97EECDD3E70F4D2C14D5433A657B


CRC32: A41C5A8A

MD5: 44A2C275DA428AB64BB2048A74BA5DDA

SHA1: FE1AF42748A5592A35C77757799FAC0A941A1307


CRC32: DBE16130

MD5: B9ED4DD6D2B8B70843D3E107DE420870

SHA1: 34A564792ECCB0451914515F39F85B6AC696CEF4

The 32 bit binaries have been tested with Windows XP and the 64 bit binaries have been tested with Windows 7.