1

I have a configuration problem with php on IIS 7.5.

It is a practically fresh install made with the MS Web PI on Win7.

I created a simple php testpage. It works in the root level http://localhost/test.php and in the first sub-level http://localhost/site/test.php, but not in http://localhost/site/subfolder/test.php, there I get HTTP 500 error:
<handler> scriptProcessor could not be found in <fastCGI> application configuration

Everything seems to be configured as specified in http://www.iis.net/ConfigReference/system.webServer/fastCgi/application

Could there be some kind of filter that disables processing at specific folder-level / or enable it just in the first 2 levels?

What should I check?

2 Answers 2

1

Turns out I copied the files that I had on the previous setup. And the subfolder that was not working had web.config where a different php-cgi.exe was specified.

Basically I now have 64-bit system and the php executable is in C:\Program Files (x86)\PHP\v5.3\php-cgi.exe, I discovered it in the IIS Manager by going to the non-working folder and opening Handler Mappings and checking the value for PHP_via_FastCGI, that's when I noticed the old executable in C:\Program Files\PHP...

Thanks for your attention :) hope this helps someone.

0

Incase you're facing this issue, ensure your for example web.config handler configuration match one of the fastCGI settings pool e.g if your pool is this

 <fastCgi> <application fullPath="C:\Users\user\Downloads\php7.4\php-cgi.exe" arguments="-d open_basedir=C:\Users\user\Documents\YurWallet\public" maxInstances="0" instanceMaxRequests="10000"> <environmentVariables> <environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="10000" /> </environmentVariables> </application> <application fullPath="C:\Users\user\Downloads\php7.4\php-cgi.exe" arguments="-d open_basedir=C:\Users\user\Documents\ReadyCash\ReadyCash.Agent.Profiles" maxInstances="0" instanceMaxRequests="10000"> <environmentVariables> <environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="10000" /> </environmentVariables> </application> </fastCgi> 

then to use for example the second pool in one of your website then your handle definition must match combo of full path and the argument i.e

 <handlers accessPolicy="Read, Script"> <add name="PHP via FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\Users\user\Downloads\php7.4\php-cgi.exe|-d open_basedir=C:\Users\user\Documents\ReadyCash\ReadyCash.Agent.profiles" resourceType="Unspecified" requireAccess="Script" /> </handlers> 

else IIS will complain of not able to find a processor

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.