Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Check out the new SourceForge HTML5 internet speed test! No Flash necessary and runs on all devices. ×
User Journal

Journal Journal: PHP5 on Windows XP x64 & IIS 5.1 issues...

So I've been trying to get my desktop set up once again for web-dev-typish activities since my laptop is......dead. My Desktop is a low-end AMD 64 Socket 939 machine, so I (ofcourse) have XP x64 installed. I tried this two months ago and gave up due to agrivation finally. I had to reinstall tonight because of some serious performance issues (as well as thinking there was a faultly installation to begin with), so I decided to try again.

I set IIS up (and two months ago, tried IIS and Apache 1 and 2 to no avail) and installed PHP. Public HTML documents, images, etc. would all load, but .php files returned a 404. This was the exact same behavior I had encountered before.

First thing I noticed was that all of the folders had the tri-state checkmark for "Read Only" checked, and wouldn't dissappear. After digging around on info on HOW to get rid of this annoyance (since I figured at the time that PHP wasn't playing nice with IIS, and IIS wasn't letting PHP execute). After digging around for two hours, I found an answer:

"So the bottom line with seeing the read-only attribute in Windows Explorer is that it's not a reliable indication of whether or not subfolders or files in that folder are actually read-only."

So, in essence, because Windows likes to be able to add images to replace the basic folder icon, your folders are always quasi-locked. I'm ok with that, but Microsoft's knowledge base on this issue ( could have done a much better job of spelling this 'feature' out.

So now that I knew it wasn't a folder issue, then what could it be? I started messing around with Home Directory->Configuration under the site options in IIS, and also with Web Service Extentions. I noticed that if I linked to different PHP .dlls and .exes, I would occasionally get the error "%1 is not a valid Win32 application" when attempting to load the application.

So Windows isn't seeing whatever %1 was as something it can use? Hu?

%1 could only be a handful of things, and would HAVE to be PHP related...but why couldn't they be used? A little more searching gave me an answer:

"Some friendly person contacted me after seeing this article and told me how to correct it. The issue is indeed caused by IIS attempting to run php5isapi.dll with 64-bit extensions which would of course lead to failure. I corrected this by entering the following into the Windows Run dialog:

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

If you people could kindly add a comment about installing PHP on the Windows 64-bi environment, it could potentially help many people.

BINGO. It was the whole 32-bit/64-bit compatibility issue allllll over again. I've started to run in to a similar problem getting ActivePerl installed and working propperly, but atleast I know that this issue might be related to it...we'll see. :)

Slashdot Top Deals

The other line moves faster.