Well I did not see your replys Thank you for them
However IIS and PHP are very funny the way they play togeather
I did this
created a simple PHP file on the concerned website. The content of this file was:
<?php var_dump(ini_get('fastcgi.impersonate')); ?>
I Navigated to this file using a browser.
My browser shows :
string(1) "1"
I ran this from cmd prompt
%windir%\system32\inetsrv\appcmd.exe list config "My Web Site" ^
/section:anonymousAuthentication
And to my surprise PHP was not running on the APP Pool for that site
here is the return from cmd prompt
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="true" userName="IUSR" />
</authentication>
</security>
</system.webServer>
So I added IUSER to the cache folder and gave it write permissions
Then uncomented the lines in indexDesktop.php Now its all good
I guess just because the web site runs under its appPool, that does not mean PHP BACK END GOES THE SAME WAY
I got this info from a different source but here it is if anyone needs it
Code: Select all
The first thing to do is to create a simple PHP file on the concerned website. (It's important to create the file on the concerned website because each website can have a different setting.) The content of this file should be:
<?php var_dump(ini_get('fastcgi.impersonate')); ?>
Navigate to this file using a browser.
** Case 1 **
If your browser shows :
string(1) "1"
Then, you need to execute the following command (you need to replace "Default Web Site" by the name you gave to your website in IIS) :
%windir%\system32\inetsrv\appcmd.exe list config "Default Web Site" ^
/section:anonymousAuthentication
You will receive an answer which looks like this :
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="true" userName="IUSR" />
</authentication>
</security>
</system.webServer>
The information you are looking for is the value of the username attribute of the anonymousAutthentification tag.
If this value is not empty, its content is the name of the user you need to give write permissions to.
If this value is empty or if the attribute is simply missing, you need to give write permissions to IIS AppPool\AppPoolName (replace "AppPoolName" with the name of your website's application pool).
** Case 2 **
If your browser shows :
string(1) "0"
You need to give write permissions to IIS AppPool\AppPoolName (replace "AppPoolName" with the name of your website's application pool).