PHP x64 (Windows) Download
Park_7677
Missouri Member
A while back I started building PHP Win64 to convert all my web server software to 64-bit. I noticed that no where can a PHP Win64 binary can be found. I first made progress in April with the PHP core, Apache2 handle, and MySQLi extension. I picked it back up, adding a lot more features to the distribution (listed in snapshot.txt). I have not found ANYONE, ANYWHERE that has got PHP 64-bit for Windows, and certainly no one who includes as many extensions as this one!
I highly suggest using this PHP build with Jorge's Apache 2.2.3 Win64 build: Apache 2.2.3 x64 binary
*** YOU MUST HAVE 64-bit CPU, 64-bit OS, and 64-bit WEBSERVER (only Apache 2.2.x tested) ***
Downloads:
Absolute Latest: PHP-5.1.4-x64 Current
There are still bugs, so don't use it in a mission-critical situation. It's still cool though, and very fast! If anyone wants to download the code and join the project I'm looking for help. There's a thread at ApacheLounge on it also. You can post here or there, just anywhere you want to offer help. Also if you download it and use it, let me know!
Admin update: The files are now hosted at Icrontic for convenience
I highly suggest using this PHP build with Jorge's Apache 2.2.3 Win64 build: Apache 2.2.3 x64 binary
*** YOU MUST HAVE 64-bit CPU, 64-bit OS, and 64-bit WEBSERVER (only Apache 2.2.x tested) ***
Downloads:
Absolute Latest: PHP-5.1.4-x64 Current
There are still bugs, so don't use it in a mission-critical situation. It's still cool though, and very fast! If anyone wants to download the code and join the project I'm looking for help. There's a thread at ApacheLounge on it also. You can post here or there, just anywhere you want to offer help. Also if you download it and use it, let me know!
Admin update: The files are now hosted at Icrontic for convenience
1
Comments
I'm in the process of learning how to set up a personal web server, one Independence Web Server of my own.
Before I will be able to contribute, I have a lot to learn.
The threshold is high, but I will overcome it.
What I would like to do, is to make my FACTS-AMD processors (based on bbcode), to work on my web server as well.
But I'll guess bbcode, is not gonna work with 64 bits.
If not, I can look forward to learn something new ...
Will it possible to get the PHP 64-bit for Linux ?
ps I have always being interested in places, and Independence, MO (Missouri), was easy to find, using Google Earth.
Nice place. (Too be honest I didn't know that MO, was Missouri)
It's nighttime here in Stockholm, with full moon, that's the same moon you gonna see some time later. ds.
Many thanks for the PHP-64 bit links,
Regards,
Esso
The great thing about PHP is once the binaries are built for a system (which the links are for Windows 64-bit) the actual PHP code can be transported between any system (Linux <-> Windows, 32-bit <-> 64-bit) with virtually no problem. However, since this particular binary is still being developed it does have bugs. I've never tried any big application (like a forum or bulletin board) but I'm certain it can be made to work
I looked at your link and it looks like you have a wealth of information (I have only rough translations of the pages though)! PHP is a great system to organize all of it. It would take some custom labor since I'm not sure anything exactly like you want exists.
I'm sure there is a PHP Linux 64 version somewhere out there. I, however, do not have a 64-bit Linux computer to try to make one on right now.
If this project does take off, I'd like to get a more formal place for it to develop; but only you and maybe one other person have actually posted back!
If you do need help getting this PHP to work you can post back here and I'll try to help out :bigggrin:
EDIT://
One thing about Independece, MO is that Harry S Truman (33rd President of the United States) is from here. I drive by the historic house all the time but if I were not from here I guess it would be pretty cool
And that when using Outpost 3.51.759.6511 (462) Firewall.
I thought it was gonna be like walking in the park, but that was a very cold park.
These PC developers are really something ...:), they must have great hunger and lust for the tweaking, hot coffee and nervous breakdown.
It is just like the feeling "One flew over the Cuckoo's nest", all over again.
And now you are seriously trying to get me into 64 bits
Well I will do it, after my fingernails has been replaced ...
That in mind. This is tremendous work! Leads me to drag out my 64Bit Windows 2003 and run it up when Im back from the USA!
Il post some results in a couple of weeks when Im back
Edit:// Actually, I think I have another use for this. We have an EMT Intel box at work we are gonna use as a webserver for a PHP app. Might stick 64 Win2k3 on it .. and see how it goes (no brainer lightweight PHP app, not a biz crit app).
rock'n roll
1. Add new extension (.php)
* Expand the local computer in the left pane
* Right-click on "Web Sites" in the left pane, then click "Properties" in the menu that pops up
* Flip top the "Home Directory" tab
* Click "Configuration"
* Flip to the "Mappings" tab
* Click "Add..."
* Enter the full path to php5isapi.dll in the "Executable" textbox (Browse... to find it more easily if you need to)
* Enter ".php" in the "Extension" textbox
* Select radial button "Limit to", enter "GET,POST,HEAD"
* Click "OK" all the way out
2. Verify php5isapi.dll is allowed
You must verify that the versions of php5isapi.dll that you want to use are allowed.
2.1. In Internet Information Services (IIS) Manager, in the left-hand column, click the Web Services Extensions node and verify php5isapi.dll is allowed and all other Web Service Extensions are prohibited.
2.2. If the version of php5isapi.dll that you want to use does not appear in the list, follow the instructions to enable it and then repeat this procedure:
Go into IIS
Below all of the websites is a folder: Web Service Extensions
In blue, to the lower left, is a choice: Add A New Web Service Extension
Add PHP/PHP5ISAPI.dll
Choose To ALLOW it.
2.3 If the version of php5isapi.dll you want to use appears on the list but is not allowed, right click the version of php5isapi.dll you want to allow and click Allow.
3. Configuring IIS for 32-Bit Emulation Mode (THIS IS MOST IMPORTANT!!!!)
3.1. If you are installing IIS on x64-based editions of Windows Server 2003 or Windows Server 2003 R2, IIS must be configured to run in 32 bit emulation mode. Perform the following procedure on each front-end Web server running an x64-based edition of Windows Server 2003.
Configure Internet Information Services (IIS) for 32-bit mode
1. Click Start, and then click Run.
2. In the Open box, type cmd, and then click OK.
3. In the command prompt window, navigate to the %drive%:\Inetpub\Adminscripts folder, where %drive% is the drive in which Windows Server 2003 is installed.
4. In the Adminscripts folder, type the following command:
cscript adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1
Note The value "1" for Enable32bitAppOnWin64 specifies 32-bit mode, whereas the value "0" specifies 64-bit mode.
5. Press ENTER.
6. Type iisreset and then press ENTER.
7. Close the command prompt window.
8. Re-star System.
Note The Run WWW service in IIS 5.0 isolation mode check box is only selected if you have upgraded to IIS 6.0 on Windows Server 2003 from IIS 5.0 on Windows 2000. New installations of IIS 6.0 use IIS 6.0 worker process isolation mode by default.
One major problem in mixing 32/64-bit is that enabling PHP 32-bit emulation disables other 64-bit web applications. There's no ground gained when you break other stuff to fix something else, as found here:
I encourage you to try this PHPx64 version; especially if you want to take advantage of IIS' other 64-bit web applications. However, if you're only running PHP and are content with your setup it works just as well. I started the project for a development server using Apache x64 since I have never seen another PHPx64 distribution.
Thanks again for the post, someone may benefit from the information.
We're looking for more support on this project Mad props to PaRK for getting this all together.
Here's the command to get IIS running in x64 mode:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
Could you maybe also compile a x64 bit version of the PECL package with the additional modules that are offered on the official php page? They've got only a x32 bit version there. There are many useful modules in that package
I will look into adding a PECL package. Some of the extensions that are in the PECL download are part of my PHPx64 download already though. Maybe you could check inside the ext directory to see if ones you are looking for are already included. If not, and you have a specific need, let me know and I will see about it specifically.
Thanks for using/supporting!
Just wanted to show my support for your x64 build of PHP and say a big thank-you!
I had been running my IIS 6 x64 box in 32bit compatibility mode since I had it but SmarterMail 4 and Helm 4 needed to be run as 64bit processes. I switched my box over to 64 bit mode and sure enough these applications worked. However, my bread and butter site http://www.ecufix.com/shop/ running ZenCart with PHP... yep PHP would not run due to IIS 6 being in 64 bit only mode.
Therefore, I stopped IIS 6, copied over your x64 distribution on top of the 32 bit php folder, restarted IIS and then it all worked!!
Thank-you, thank-you, thank-you!
Andy
1. installed iis on x64 machine
2. installed asp.net (and it worked)
3. installed php (didn't work, getting error because it's a win32 app)
4. tried to change the system to x32, worked, but other programms didn't work.
5. changed it to x64 again (php don't work anymore)
6. get phpx64
7. copy it over the php-map and replaced it.
And now my PHP doens't work yet. It is loading the php-file, and then it stays there... trying to load the file but never end with that.
What is the problem? Do I forget something?
How can I install phpx64 then? There is no msi or something.
Chepry
Tested on:
Vista Ultimate x64 SP1 build 6001
Apache Apache/2.2.8 (x64)
PHP Version 5.2.5 (x64)
Park_7677 you still around somewhere?
Thanks!
Park, Icrontic would be happy to host the binaries if you'd like.
lists files to download
The site was down for a couple days due to some problems with our host. If it was still Sarcnet I don't think we'd have a problem.
Prime, I'm going to talk to Park and we'll see how maybe getting the project back up and running and hosted. Thanks for the offer!
but regarding the php_pdf.dll - I need a libpdf.dll since I use the more advanced features that comes with the pdflib+pdi licence with pdflib.com
I have asked pdflib.com to compile a x64 dll, but they doesn't seem to bother - anyone here with any good reference to any of the pdflib employees that could be interested in helping them (me) so that by getting access to the sourch, not just the lite-version - the full libpdf_php.dll in x64 could be availiable to everyone else like me who are missing this little thing to get everything up in production
Jesper
Sorry if this is a bit off-topic, but I can't find anything on the web about this and I'm wondering if it's to do with the x64 version, or if it's purely an IIS issue.
I've just installed this, ver 5.2.5 (x64), on my Vista x64 set-up with IIS7. PHP appears to be working fine. php.ini found, etc, and phpinfo() plus other basic commands like echo() work just fine, and pages are happily generated.
However when I try to run my old website(s), I run into IIS7 error pages. There are several scenarios:
- Virtual directory |- HTTP Error 500.19 - Internal Server Error. It goes on about "Cannot read configuration file due to insufficient permissions", referencing web.config in the site root (which is strange, because this is all PHP and not ASP!).
- wwwroot |- a more generic HTTP Error 500 which is totally unhelpful. This error appears for the same file as above, if it is copied from the virtual dir to the wwwroot. In other words the error differs depending on whether the file is in the wwwroot or the virtual dir. File permissions with the files that do work are identical. I even tried creating a new file and copying the code over, so the file was new with inherited permissions. But it made no difference.
- I mucked around with file permissions for a while, and changed "physical path credentials" in IIS7 to my specific user account (rather than 'pass through authentication'). This changed the IIS error to a simple text output: "Input file required". I assume that's a wild goose chase.
I have done a totally standard install, and as above, PHP x64 does appear to be working okay, at least at a basic level. Does anyone have any idea why on earth I am getting these IIS7 errors for my "proper" files?JesperI have this same issue with PDFLib. I have installed the same Apache (2.2.9) and PHP (5.2.5) versions as your self. I was speaking to a guy from PDFLib called Ranier. They seem to be interested if i was prepared to do the work.As for their DevTeam doing it? No chance!!!This, below is part of the last correspondance i had off PDFLib Support. As this area is not my forte, hopefully this will mean something to one of you guys on here.
When you build the DSO with our PECL extension, you have to linkagainst the 64-bit C library, which is available for download onour website.
Regards
NickC
Also, I'll add that Ranier was immensely helpful the one time I had to talk to PDFlib for technical support; very quick and responsive. Unfortunately this probably just isn't worth the manpower to support for them.
Welcome to Icrontic, Nick!
Yes you are correct. Ranier is helpful and reaponds to be promptly, its just the Dev Team not doing anything about it. Which is a bit of a let down.
I have sucessfully set up PDFLib on 32-bit its just this damn 64-bit.The Apache and PHP is currently up and working, just lacking the .dll from PDFLib.
I will speak to JHenry as per your recommendation
Regards
NickC
So, yes, he definitely figured out how to do it
//edit: And bonus points to John for quietly finding the solution to an issue I didn't even know existed! Everything's more complicated in 64bit, isn't it?