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


Forgot your password?
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

To restore a sense of reality, I think Walt Disney should have a Hardluckland. -- Jack Paar