当我进一步调查时,让我重新表述我的问题:
问题:
我有一个 php 脚本,用于在我的 Windows Web 服务器 2008 上上传图像。文件在正确的目录中创建。它们由用户创建和拥有Network Service
。Network Service
对上传的文件具有完全访问权限。
当我尝试通过 HTTP 访问上传的文件(主要是图像)时,出现错误401.3 not authorized
。
现在,如果我右键单击不可访问的图像并IIS_IUSRS
通过安全选项卡授予组读取权限,则可以访问该图像!默认情况下,IIS_IUSRS
对上传的文件没有任何访问权限。
包含图像文件的目录已设置正确的访问权限。但每个新上传到目录的文件都允许IIS_IUSRS
。
问题:
我如何才能IIS_IUSRS
默认授予对新上传文件的访问权限?网站的 appPool 将其身份设置为默认值,我也尝试将其设置为“networkIdentity”左右,但这也不起作用。
答案1
总结一下:授予 IUSR 帐户修改C:/Windows/Temp/
目录的权限并重新启动 IIS 站点。或者,您可以通过覆盖值来修改 php.ini 中 php 写入的位置,upload_tmp_dir
这可能比让 Web 应用程序写入C:/Windows/
目录更可取。