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

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

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

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://xjtudll.cn/Exp/648/

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

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

VS2010:资源视图里看不到资源,提示在另一个编辑器中打开

VS2010:资源视图里看不到资源,提示在另一个编辑器中打开

问题: VS2010 MFC对话框编程 资源视图里面的内容看不到了,提示“在另一个编辑器中打开” 原因: 一般这种情况是打开了头文件中的resource.h造成的, 解决办法: 关闭resource.h,在资源视图中重新打开即可。 (双击.rc再双击)...

水晶报表提示“需要数字字段”

水晶报表提示“需要数字字段”

解决方法: 1.新建一个公式字段,命名applyqty,编辑内容为:CDbl ({字段名}) 作用是将字段转换为数字字段 2.新建另外一个sum的公式字段,内容如下 if isnull({@applyqty}) then 0 else sum({@applyqty}) 这样...

phpstorm调试XDebug 超时问题

phpstorm+xdebug+apache 调试代码时,一分钟就超时处理: 修改配置文件:1.php.ini 设置xdebug, 增加 xdebug.remote_cookie_expire_time = 3600max_execution_time=3600max_input_time=3600...

IIS配置允许下载APK文件

IIS配置允许下载APK文件

MIME类型:application/vnd.android.package-archive...

金蝶K3物料在各个订单中如何显示长代码

在系统设置-系统设置-仓库管理-系统设置-供应链整体选项中右边‘基础资料录入与显示采用短代码’的勾去掉...

Itunes搜索——找正版免费软件的利器

Itunes搜索——找正版免费软件的利器

一直以为ipad不越狱没啥游戏可玩的,其实不然,itunes store大把的免费正版软件   打开iTunes,选择菜单上的 Store ,再选择“搜索”:  然后,先选择“应用软件”,例如,想找所有免费的游戏,而且是IP...

发表评论

访客

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