繁体   English   中英

PHP / IIS copy()/ move_uploaded_file()无法打开流:权限被拒绝警告

[英]PHP/IIS copy()/move_uploaded_file() failed to open stream: Permission denied Warning

我对Web开发比较陌生,目前遇到了一个我无法解决的错误。

我在输入“ http://localhost/index.html ”后使用IIS测试我的php并选择要上传的示例文件,它会生成以下警告:

Warning: move_uploaded_file(upload/Angela_Nie_resume_technical - EditedMW.doc): failed to open stream: Permission denied in C:\inetpub\wwwroot\test.php on line 26
Warning: move_uploaded_file(): Unable to move 'C:\Windows\Temp\php74F2.tmp' to 'upload/Angela_Nie_resume_technical - EditedMW.doc' in C:\inetpub\wwwroot\test.php on line 26

以下是与移动文件相关的代码。

$target_dir = "upload/"; 
$target_file = $target_dir . basename( $_FILES["uploaded"]["name"]) ; 
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target_file))  {
    echo "The file has been uploaded"; 
}  
else { 
    echo "Sorry, there was a problem uploading file."; 
}

我使用Windows 8.1并使用IIS运行localhost。 提前谢谢你帮助我!

在我的情况下,IUSR帐户需要目标目录中的权限。 不是ISS_IUSR帐户,只是IUSR帐户。

这意味着运行apache服务器的用户没有upload/目录的写权限。 您可以右键单击该文件夹并设置写入所有人的权限。

更新

这可能是因为您的PHP处于安全模式并且不执行将一个文件移动到另一个文件之类的命令。 检查你的php.ini上safe_modesafe_mode_exec_dir并试验它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM