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.

Anyway, here are the download links along with CRC32, MD5 and SHA1 hashes. I have provided “no-ssl” binaries like Apache.org does, which do not contain mod_ssl. The 64 bit binaries have been tested with Windows 7 x64 (I am currently using the 64 bit binaries myself) and the 32 bit binaries have been tested with Windows 7 x64 and Windows XP.

apache_2.2.13-x64-no-ssl.msi

CRC32: 11EDC9E8

MD5: 64A25D37E65369EAA7B1AF48255C92E3

SHA1: EE7327053F3A62F4ADDE94EB3F83F8FDB3946FF4

apache_2.2.13-x64-openssl-0.9.8k.msi

CRC32: 2FDAB3FC

MD5: D506460180486D648471B4E1BAFB8EC0

SHA1: 0846B4AD4C146460C4292CBEB32B84BDCC5E84C5

apache_2.2.13-x86-no-ssl.msi

CRC32: 53B7377B

MD5: 56098216EAA08729684DC3C9CAD8FE88

SHA1: CFAD89356D9059D16EC2F254A76F90E7112FE5CC

apache_2.2.13-x86-openssl-0.9.8k.msi

CRC32: 3286E3AB

MD5: 5E0BF685EDE09202CD0B2EF24EC8BB65

SHA1: 72BE2029A18D9FA600ACA11AEB02A19205DDE3BE

By the way, I have also decided to create 64 and 32 bit installers for any future versions of the Apache HTTP Server. ๐Ÿ˜€

Related Posts:

You can follow any comments to this entry through the RSS feed. You can leave a comment, but pinging is currently not allowed.

39 Comments

  • I love you more. We desperately needed the x64 binaries in an installer form. Thank you a million times!

  • Is it possible to build the Apache 2.2 (current version 2.2.14) with VC++ 2008 Express and Windows SDK 7.0? If the answer is yes, then can you please explain the procedure?

  • @SaltwaterC

    I didn’t know that 2.2.14 was already out. Thanks to you, I know now. ๐Ÿ˜€ I will compile both x86 and x64 binaries and post them soon.

    As for compiling it with Windows SDK 7.0, it should be possible, but I am not sure about it. I compiled the binaries posted above with Windows SDK 6.1. I see that Windows SDK 7.0 was released the very next day after I posted these binaries. ๐Ÿ˜€

  • Well, my actual issue goes beyond which Windows SDK is used. Your Apache build, or the Apache build from blackdot.be (the lack of installer isn’t an issue) so far work flawlessly, thus no need for me to reinvent the wheel. However, the PHP x64 build is giving me grief. I need a x64 build for working with large integers that won’t fit into a int32_t, thus they require to be stored into int64_t. After working a whole day in order to build my own PHP binaries – and I did a core build + a couple of extensions, I realized that the signed integer from PHP still acts like the 32-bit build. Still can’t figure out where’s the issue: MSVC9 (Express) + WinSDK 7.0 or the PHP source tree. I also tried other 3rd party builds from apachelounge.com or fusionxlan.com, as well as the official binaries for PHP 5.3.1 RC1. All of them have the same issue. Any decent Linux build won’t reproduce this. While I develop most of my code under Linux, this isn’t an issue that affects me directly. I do this ‘research’ for some fellow PHP under Windows developers that are scared by the word ‘compiler’.

    Code that proves the broken behavior (should break on x86 only):
    var_dump(PHP_INT_MAX); // int32_t value
    $int = 3147483647;
    var_dump($int); // integer overflow – failback to float
    $int = $int * 100000;
    var_dump($int); // large float which would break any database keys, displayed as 3.147483647E+14

    This kinda makes PHP next to useless under x64 environment. Well, it’s time to bug again the PHP core developers.

  • Its happening with a PHP 5.3 binary that I compiled with Visual C++ 2008 Pro and Windows SDK 6.1 also, so the problem is definitely with PHP.

    You should post a bug report if you haven’t already. ๐Ÿ˜€

  • How about:
    “If you are using PHP with Apache2 from apache.org you need to use the VC6 versions of PHP

    If you are using PHP with IIS you should use the VC9 versions of PHP

    VC6 Versions are compiled with the legacy Visual Studio 6 compiler

    VC9 Versions are compiled with the Visual Studio 2008 compiler and have improvements in performance and stability. The VC9 versions require you to have the Microsoft 2008 C++ Runtime (x86) or the Microsoft 2008 C++ Runtime (x64) installed

    Do NOT use VC9 version with apache.org binaries”?

  • @plinth

    You can use the VC9 versions of PHP with these Apache binaries, cause I compiled them with VC9 too.

  • You are welcome. ๐Ÿ™‚

    But I hope that you installed the new 2.2.14 binaries and not the 2.2.13 ones available on this page.

  • Oops, I did, but it was on a temporary machine anyhow (long story that includes a dead hard drive).

    I found the new ones for my real install today… thanks again!!

  • Yes, I noticed. Most likely there were problems with those binaries. They weren’t meant for production use anyway.

    I will try and compile PHP 5.3.1 when I have some free time. In the meantime you can use the 5.3.2-dev binaries.

  • Thank you for your excellent work. Do you have any idea about how to go around the mssing php5apache2_2.dll in the php VC9 x64 distro?

    LoadModule php5_module “C:/PHP/php5apache2_2.dll”

    This is at the moment causing problems since the dll file is missing

    Happy new year

  • I should add that it is working using PHP as CGI, though I prefer to use the PHP as a module. Just in case this interests you.

  • I compiled that module long ago but never posted it here. I thought about posting it but always keep forgetting. ๐Ÿ˜€

    Anyway, here it is. I compiled it for PHP 5.3.0. Not sure if it will work with the latest snapshots.

  • Thankyou for doing this. Trying to build a x64 WAMP server on server2008R2 and was having trouble finding the x64 apache and php files. Searching the net for these has been fruitless since both the http://www.blackdot.be/?inc=apache/binaries and the http://www.fusionxlan.com/PHPx64.php sites no longer are available.
    Couldn’t locate the 5.3.2-dev x64 php files at the http://windows.php.net/snapshots/ though. Did you ever get around to compiling the php x64. If so, could you please post them?

    Thanks again, Robert

    • I initially thought about posting future versions in this post, which is why I put 2.2 instead of 2.2.13 in the title. Later I decided to create new posts for the new versions but kept the title of this post the same since it has already been indexed by search engines. ๐Ÿ™‚

  • Is there anyway you could post these to a differnent location. Our web filters won’t allow us to visit mediafire. Thanks much.

    • Sorry for the late reply. You can find latest Apache binaries (2.2.17 as of now) on this page. They are also hosted on mediafire. But if your web filters don’t allow you to visit mediafire, chances are they may not allow you to visit other popular file hosting sites either. But if you know of one that you can visit, let me know and I will upload there. ๐Ÿ™‚

  • @Alexander

    Yes, sure. If you can give me ftp details or something, I can upload there too. ๐Ÿ™‚

  • @Sam

    I have no idea what you mean by “promotional use”.

    By the way, latest version of Apache (2.2.17) can be found here.

  • @Sam

    Do you mean “production use”? If yes, then of course you can. You can install and use these binaries in any way you want. ๐Ÿ˜€

    • You’re welcome. And I have no idea why there are no official 64 bit binaries or official binaries compiled with VC9 at Apache’s site.

      Also, I hope you have not installed these as latest version of Apache is available here.

  • I have been searching for the installers and got it here. one question, is it legal to use your binaries and do u have plans to make future installer packages available?
    Thanks.

  • @Murray

    This is a very old post. In case you haven’t noticed, I have been posting installers for newer versions of Apache also. Here’s the most recent version – http://www.anindya.com/apache-http-server-2-2-22-x86-and-x64-windows-installers/.

    And I don’t see how using these binaries can be illegal. But you should take a look at the “Cryptographic Software Notice” at the end of this page – http://www.apache.org/dist/httpd/binaries/win32/. It however only applies to the binaries with openssl.

  • After screwing around trying to get the latest Apache & PHP installed manually, I finally Googled and found your link. I don’t know why Software developers are the worst people at writing manuals.
    After several tries i just decided to fall back to something that works. The latest Stable Release is not stable, and if you can follow the install instructions which are not clear there are still errors and omissions.

Leave a Reply to Stefan