Posts Tagged ‘Windows’

PHP 5.3.4 x64 (64 Bit) for Windows

PHP 5.3.4 was released a few days ago (December 10, 2010). Last Sunday (December 12, 2010) while I was trying to compile some of the extensions that were requested in my previous post, I decided to check the php.net site to see if a new version of PHP was available and that’s when I saw that PHP 5.3.4 was out. I immediately stopped what I was doing and downloaded the PHP 5.3.4 source to compile it instead. I also decided to compile the requested extensions along with PHP 5.3.4. From the extensions that were requested, I was able to compile the snmp (php_snmp.dll), firebird 2.1 (php_interbase.dll and php_pdo_firebird.dll) and the pecl http 1.0.7 (php_http.dll) extensions. I have also compiled eAccelerator 0.9.6.1, APC 3.1.6 and Memcache 2.2.6 which I had previously compiled for PHP 5.3.3.

Anyway, as before, I have compiled both thread safe and non thread safe versions of PHP and the additional extensions. They were compiled with Visual C++ 2008 (VC 9) and can be used with my 64 bit Apache binaries.

Download

VC9 x64 Thread Safe

php-5.3.4-Win32-VC9-x64.zip

CRC32: 8B1FA8D5

MD5: 631CC93DA3623F2C5C1511D8B963AAC4

SHA1: B506FDF4AAB4F7E41AAB0E72F93D0864E3B6EFF4

VC9 x64 Non Thread Safe

php-5.3.4-nts-Win32-VC9-x64.zip

CRC32: 8B730428

MD5: 2C48B977B49D271528AFE05EBE10BEB4

SHA1: 16A071CEA8936F6C46DE5FB2D6EE1CC65214B1AB

Additional Extensions

The pecl archives below contain the APC 3.1.6, http 1.0.7 and Memcache 2.2.6 extensions.

pecl-5.3.4-Win32-VC9-x64.zip (Thread Safe)

pecl-5.3.4-nts-Win32-VC9-x64.zip (Non Thread Safe)

eAccelerator-0.9.6.1-5.3.4-Win32-VC9-x64.zip (Thread Safe)

eAccelerator-0.9.6.1-5.3.4-nts-Win32-VC9-x64.zip (Non Thread Safe)

Update: The php_apc.dll extension in the pecl archives above have experimental features enabled in them (enabled automatically by configure command) and may not work as expected. I recompiled the thread safe extension without the experimental features and it can be downloaded from here.

PHP 5.3.3 x64 (64 Bit) for Windows

Just noticed today that PHP 5.3.3 was released recently. However, there still aren’t any official 64 bit binaries for Windows available at php.net. So once again I have compiled PHP myself and here are the 64 bit binaries for Windows.

I have compiled both the thread safe and non thread safe versions together. They were compiled with Visual C++ 2008 (VC9). The thread safe version includes php5apache2_2.dll for use with Apache 2.2 and php5isapi.dll for use with IIS.

Download

php-5.3.3-Win32-VC9-x64.zip

CRC32: 012202E7

MD5: 0AEBDC3B4C2EA1B917ED6731C2F7B874

SHA1: 29B126355C750665D48BE54F421879908D78B063

php-5.3.3-nts-Win32-VC9-x64.zip

CRC32: 0358080C

MD5: 7E19FBE4F92512C20ECE7328FEDE040F

SHA1: 104DD1797858C8B20BD61FBA33F4311BB7D61A10

Update: I didn’t notice that the php_ldap.dll extension wasn’t compiled this time. It didn’t compile because as of PHP 5.3.3, it requires libsasl, which was missing. Anyway, I had to compile libsasl and then the php_ldap.dll which I am posting here separately.

I also took the time to compile eAccelerator for PHP 5.3.3 and also NTS version of WinCache which someone requested last time.

Additional Extensions

php_ldap.dll VC9 x64 Thread Safe

php_ldap.dll VC9 x64 Non Thread Safe

eAccelerator 0.9.6.1 VC9 x64 Thread Safe

eAccelerator 0.9.6.1 VC9 x64 Non Thread Safe

WinCache 1.1.0 VC9 x64 Non Thread Safe

Memcache 2.2.6 VC9 x64 Thread Safe

Memcache 2.2.6 VC9 x64 Non Thread Safe

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 http://windows.php.net/qa/.

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 “127.0.0.1” 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 “127.0.0.1       localhost” if it is commented out by default, as is the case with Windows 7. Another workaround is to use “127.0.0.1” 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.

Download

php-5.3.2-Win32-VC9-x64.zip

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. 😀

Download

modsecurity-apache_2.5.12-win64.zip

CRC32: 71D2A7FD

MD5: A86A2779191FBE7B6352ACEE7C3F7345

SHA1: 7A3329199794C967706610E2A25453402DCEBC27

ModSecurity 2.5.11 x64 (64 Bit) Windows Binary

ModSecurity

ModSecurity 2.5.11 was released on November 6, 2009. And so, here is the 64 bit binary for Windows. It also includes latest version of libxml2 (version 2.7.6).

For installation instructions, refer to the ‘install.txt’ file in the zip archive.

Download:

modsecurity-apache_2.5.11-x64.zip

CRC32: 231399B8

MD5: 6145769A5AB033AE97A7C2E7603A2F57

SHA1: D84F88289FAC06A77ABFDEA4322C85A277A60963

ModSecurity 2.5.9 x64 (64 bit) Windows Binary

ModSecurity

Update: ModSecurity 2.5.11 is now available.

Now that I am using 64 bit version of the Apache HTTP Server, I also have to use 64 bit version of ModSecurity. I couldn’t find a 64 bit binary of the latest version (2.5.9 at the time of this writing), so I decided to compile it myself.

Anyway, I am posting this binary here for anyone else who needs it. I am currently using it with Apache 2.2.13 in Windows 7. It was compiled with Visual C++ 2008 (VC9), with libxml2-2.7.3 and lua-5.1.4.

Download:

mod_security-2.5.9-win64-x64.zip

CRC32: A5642466

MD5: E86DA5091B639CD5E8CEB1422D7101C1

SHA1: 53D09F4E2F52ABE3D21C8BBBE6FC6FC66B545BCB

Apache HTTP Server 2.2 x64 and x86 MSI Installers

Apache

Update: Installers for Apache HTTP Server 2.2.14 can be found here.

I haven’t posted anything in my blog for quite some time. It’s been more than half a year actually. 😮 Anyway, it’s about time for me to post something new. I will start by posting MSI installers for Apache HTTP Server 2.2.13.

Why did I decide to create these installers?

Well, now that Windows 7 has been released to manufacturing, I have started using Windows 7 64 bit. I was using 32 bit version of Windows 7 RC earlier and before that it was 32 bit Windows Vista. I had Apache, MySQL and PHP installed on my previous Windows installations, and now that I was using a 64 bit operating system, I wanted to install 64 bit versions of Apache, MySQL and PHP. MySQL.com has already been providing 64 bit binaries for Windows and I also found 64 bit binaries for PHP 5.3 here (although they aren’t meant for production use). But there is still no 64 bit version of Apache available from the official site. I did find unofficial 64 bit binaries at http://www.blackdot.be/?inc=apache/binaries, but in a zip file; without an installer.

So I decided to compile Apache myself and also create an installer for the compiled binaries. An installer makes it easier to install the software at any location of your choice, and also allows you to install only the components that you need.

It took me a while to set up the build environment on my new installation of Windows (Visual Studio 2008, Windows SDK 6.1, etc). While I was compiling Apache, I remembered that the official 32 bit binaries are compiled using VC6 and since I already had the build environment set up, I decided to compile 32 bit binaries too. These binaries that have been compiled with Visual C++ 2008 (VC9) should have “improvements in performance and stability” compared to the official Apache.org binaries.

Read More