PHP在IIS环境下文件不能上传的原因

[url]http://www.gaoxigang.com/?p=370[/url]

[quote]最近做文件上传功能,发现在Apache服务器,文件可以上传,但传到IIS服务器,功能就无法使用了。

测试后发现,用file_exists函数检测临时文件,在IIS下返回false。感觉跟上传后的临时文件夹的配置有关。

根据“内事问百度,外事问谷歌”的原则,纠结了一下这个问题是属于内事还是外事?

然后全搜了一下,得到如下原因:

IIS 环境下,如果在php.ini下没有配置 upload_tmp_dir 的路径,临时文件默认是存在机器上的临时文件夹内,比如 说:“C:\Windows\Temp”下,并且临时文件夹需要“WORKGROUP/users”的所有权限,而系统默认给“WORKGROUP /users”执行临时文件夹的权限,不同机器会不相同。

所以解决方法是:

在php.ini配置一下upload_tmp_dir(如:upload_tmp_dir = “D:\temp”);

或者找到系统默认的临时文件夹,给予“WORKGROUP/users”所有权限。

总结Temp目录的权限为:administator、system、users三者需具有完全控制权限。[/quote]

fine
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值