最近用虚拟机搭建了IIS + PHP + MYSQL的环境,随后在网上找了个代码来测试,结果发现在网站后台上传图片时提示不成功。
既然上传不成功,那就是环境配置的问题了,进入php manager把配置调出来看发现“ file_uploads”的状态模式就是开启的,可为什么就会上传不成功呢?站点的目录权限也都没有问题。
带着疑问上百度查了下,最后在一篇文章中找到了问题所在和解决方法。IIS + PHP环境下上传文件时,是先将文件上传到一个临时目录下再挪动到目的位置,那这个TMP位置在哪里呢?在PHP配置页面再往下拉一点就会看到一项“upload_tmp_dir”。
“C:\ WINDOWS \ TEMP \”这个就是默认的临时目录,看下这个目录的权限,发现Everyone和IIS_IUSRS是没有权限的,这就是问题的所在,解决方法就是在临时目录里把这两个用户的权限加进去。
权限添加好后再来上传张图片看看是否成功。
问题解决,临时目录也是可以自定义,但别忘了Everyone和IIS_IUSRS这两个用户的权限。
发表评论