Link to home
Start Free TrialLog in
Avatar of TechResource
TechResource

asked on

PHP server API change

I'm getting an error running an install.php script and the document states that If you experience problems installing with this script, or while installing Trendy Site Builder
try changing PHP's Server API to ISAPI .This Server's API is: CGI-FCGI

I cannot find where to make this change.
Avatar of pcsmitpra
pcsmitpra
Flag of India image

To execute the PHP on IIS , You would have made configuration like :
Create a Application extension
Extn name : - .php, File Path: -  C:\PHP\php-cgi.exe , Verbs : - All Verbs , Script Engine checked.
And also create  a Web Service Extension
Extn name : - PHP , File Path: -  C:\PHP\php-cgi.exe

They are asking you to run PHP using PHP Isapi DLL like :
Create a Application extension
Extn : - .php , Path : - C:\PHP\php5isapi.dll  , Verbs ; - All Verbs ,  Script Engine checked.
And also create  a Web Service Extension
Extension Name : PHP , File Path : - C:\PHP\php5isapi.dll

I hope this will help. Cheers.
Avatar of TechResource
TechResource

ASKER

I have everything in place as you say to have it already, except the first application extension is C:\PHP5.2\php.exe

And the Web service extention is C:\PHP5.2\php5isapi.dll

After changing the Application extention to C:\PHP5.2\php-cgi.exe I get the following error.
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.





The page doens't even display any longer, it just gives that error message now. I'm researching the error but MS states that it must be a programming issue, but the page worked before I made the application change.
Ok, after some testing I see what is going on but not sure how to fix it.

If I use PHP version 4.4 it shows the page but has the original error. and it could be because I am using PHP version 5.2 for the Web service extention here C:\PHP5.2\php5isapi.dll because PHP version 4.4 does not come with a php isapi.dll file.

So where can I find the version 4.4 isapi.dll?

I found the dlls and am now using PHP 4.4.9 with the Application extention at C:\PHP4.4.9\php.exe because there is no php-cgi.exe in the 4.4.9 version.

I also change the web extention to C:\PHP4.4.9\php4isapi.dll

I still get the original error. How can I change the server API to ISAPI? like they are sugesting?
C:\PHP4.4.9\php4isapi.dll

Go to Web Service extension ,  you will find the Web Service extension for PHP  , you  can either modify same or create a new one with mapping to : C:\PHP4.4.9\php4isapi.dll

Go to IIS -> WebSite -> Properties -> Home directory -> Configuration -> Locate .php and click edit/Modify
Map it to : C:\PHP4.4.9\php4isapi.dll
click ok
Apply -> Ok -> Ok

Run IISreset command and try to browse it again.
Sorry for the delay!

 I did try this and still get the same original error.
Could you please paste the file you have mapped to :
Web Service Exten
Application Mapping for .PHP extn
You can see the error message at http://spokanetechresource.com/install.php if you click on install
ASKER CERTIFIED SOLUTION
Avatar of pcsmitpra
pcsmitpra
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.