> -----Original Message----- > We have a new piece of software to roll out in the next week. > The software is built on PHP 4.3.4, but the webservers that > we intend to use are also running other websites which are > only tested on PHP 4.0.4 or 4.1.2 or something. Obviously > ideally, we would like to upgrade the webservers to 4.3.4 but > we can't afford to risk breaking the other sites. I figured > we would be able to install a second copy of PHP and use that > for the latest site. However, I want it using its own > php.ini and IIS doesn't seem to like me passing in the path > to the php.ini using the -c option. Has anyone managed to > solve this problem, or do I have to share a common php.ini > between the different versions of php? Below is the text I wrote in a previous email that might help: First and foremost, the installation instructions are the way they are because of simplicity sake, there are really 2 ways to setup PHP that differ considerably. It has been a while since I tried PHP on windows in ISAPI mode, so what I telling you will *not* work if you want to run the ISAPI PHP. First off, ditch all the comments about where to put php.ini and all the dll's -- they are only when trying to get PHP to work as ISAPI module. After a fresh uncompression of a php distro (I usually pick a drive, like f: or g:), and move the new directory to the drive I chose. Then I rename the dir so that the php directory is something like f:\php432 or g:\php434. If this is a fresh install, I also create a dir like f:\php or g:\php -- this will hold all version neutral php files, like sessiondata/uploadtemp/includes--in fact, create those subdirectories now and make note of the path (ie, f:\php\sessiondata or g:\php\uploadtemp). Now, inside your f:\php434 dir, copy all files in f:\php434\dlls\ to f:\php434\. Now copy the php.ini-recommended to php.ini. Next we edit the php.ini. When you edit the php.ini, try to distinguish between version specific and version neutral settings--ie, when you set the upload temp directory, use f:/php/uploadtemp instead of f:/php434/uploadtemp etc... likewise for the session directory. the extension directory will need to change from ./ to f:/php434/extensions (it was setup from the zip archive--you downloaded the zip archive, right?). If you are using MSSQL, then you also need to set the text size from the default of 4096 to the max value allowed -- this prevents unexpected truncation of data when fetching data from mssql. Don't forget to set the include_path to f:/php/includes as well as your SMTP server and email address. Next, I decide which extensions to enable--usually openssl/pdf/mhash/domxml/xslt/mssql/curl/gd2 are a must. Save the file. Now it is time to setup IIS. You will need to right-click the server name in internet services manager and select properties, then edit the WWW Service master properties; go to the Home Directory tab, click configuration, then add an entry that points the .php extension to f:\php434\php.exe. When you point IIS to php.exe, your are using PHP as a CGI. When you point IIS to php4isapi.dll, you are using PHP as an ISAPI module. That's all there is to it really. When running PHP as an ISAPI module, the code actually becomes part of the IIS process and therefore needs to know where to find the other PHP files, thus the c:\windows\php.ini location and "copy the extension dll's to c:\windows\system32" instructions which are bunk -- just add the PHP dirs to your environment path (f:\php434\dlls and f:\php434\extensions) if you want to run PHP as an ISAPI module. That about does it--shoot me an email if you have any questions or need clarification (this email was a bit hasty). -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php