当前位置:首页 > 技术心得 > 正文内容

IIS+PHP环境下文件上传没法访问问题

xjtudll4年前 (2022-08-01)技术心得7330

PHP运行环境:IIS FastCGI

在IIS FastCGI方式运行时,经过浏览器请求的Web资源有2类,一个是经由php_cgi.exe产生的内容,一部分是静态资源,由IIS返回给用户。

这2类用户有区别,前者是IIS_IUSERS,后者是Authenticated User或者是Anonymous。

###PHP上传流程 PHP上传通常分两个步骤

第一步,是上传到一个upload_tmp_dir,

第二步通常是这样move_uploaded_file($file["tmp_name"], $filePath)。而移动文件是会保留其权限设置。 

###“因为 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置,您无权查看此目录或页面”问题的产生 

若是没有在php.ini设置upload_tmp_dir属性,IIS默认的这个temp目录就是C:\Windows\Temp。

解决方案

  1. 在默认的temp目录设置相应权限,右键->属性->权限->添加。这种方案是不安全的,不推荐。
  2. 设置php.ini相应属性,在指定的目录设置相应权限(搞不清楚的话这个目录可以授予所有用户读写权限),方法同上。
  3. 不使用move_uploaded_file函数,直接读写


扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/648/

标签: 服务器
分享给朋友:

“IIS+PHP环境下文件上传没法访问问题” 的相关文章

关于数码管动态扫描

大家知道驱动一个或者两三个数码管,如果单片机有足够的IO口,我们可以用静态显示,至于什么是静态显示(动态显示的基础),这里不做阐述。 但如果,或者假如我们要点亮8个数码管或者更多,而恰恰单片机IO口不够用的情况下(扩展IO口的不讲),这是就必须用到动态扫描的显示方式了。 什么是数码管动态扫描?所谓...

c#:Task不包含Task.Run

问题:“System.Threading.Tasks.Task”并不包含“Run”的定义 解决: 使用Net 4.5框架...

Quartus II 中管脚上拉电阻(弱上拉)的设置方法

Quartus II 中管脚上拉电阻(弱上拉)的设置方法

参考资料: http://blog.sina.com.cn/s/blog_706f04d20100oelx.html 由于系统需求,需要在管脚的内部加上上拉电阻,目的是为了有个固定的初始状态。 以Quartus II 11.0为例,具体过程如下: 1、在菜单Assignments 中选择Assig...

水晶报表字符串字体大小根据字数调整

在实际应用中,可能需要根据字数多少来调整字体的大小。简单介绍一个方法。          选择要设置的字段,右键->设置对象格式->字体->大小,单击右边的x+2进入公式工作室,输入如下代码: if L...

水晶报表 文件 xxxx.rpt 文件内部出错:无法加载数据解决方案

水晶报表 文件 xxxx.rpt 文件内部出错:无法加载数据解决方案

  水晶报表 文件 xxxx.rpt 文件内部出错:无法加载数据解决方案 发布的时候,忘记带上这个app.config了,编译以后它的名字叫做xxx.exe.config(在debug和release目录里),xxx表示你的应用程序的启动项的程序文件,或者叫主程序吧,知道是什么就行了,...

OKI单片机——ML610Q4XX 捕获功能

OKI单片机——ML610Q4XX 捕获功能

捕获取得的值是正常的两倍。 配置步骤: 1.通过(P0CON1)设置引脚模式。 2.设置外部引脚中断控制寄存器EXICON1。 3.设置CAPCON寄存器的ECAP1位启动捕获通道1。 /***********************************************/ * @bri...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。