Add writing permission to PHP on IIS 7

前端 未结 3 1947
名媛妹妹
名媛妹妹 2020-12-12 22:41

I need a PHP script to have writing permission in a directory. PHP 5.3 is running as FastCGI under IIS 7 with windows server 2008 as OP. On my php error logs, I got \"permis

相关标签:
3条回答
  • 2020-12-12 22:44

    Actually, it's a little bit more complicated.

    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).

    0 讨论(0)
  • 2020-12-12 22:51

    You need to give PHP writing permission, not IIS. This means the user account that PHP is running on needs permission (probably the same one IIS is running on).

    0 讨论(0)
  • 2020-12-12 23:03

    I have the same setup and I have to give write permission to:

    • IUSR
    • IIS AppPool\<<AppPoolName>>
    0 讨论(0)
提交回复
热议问题