0

我正在尝试使用 CakePHP 文件上传表单助手将文件上传到我的服务器。
我目前在我的开发计算机(Mac OSX)上运行 CakePHP 1.3。
当表单提交时,它在传递给控制器​​的变量中有它的临时名称:/var/tmp/name然后它的名称作为文件的名称。
但是,当我尝试将文件重命名为更永久的位置时,它会失败,如果我转到该位置,它就不存在。

我收到这些错误消息:

Warning (2): move_uploaded_file(Users/chustar/Documents/IMAG0001.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory [APP/controllers/users_controller.php, line 41]
Warning (2): move_uploaded_file() [function.move-uploaded-file]: Unable to move '/private/var/tmp/php98lzsP' to '/Users/chustar/Documents/IMAG0001.jpg' [APP/controllers/users_controller.php, line 41]
Warning (2): Cannot modify header information - headers already sent by (output started at /Library/WebServer/Documents/cake/libs/debugger.php:673) [CORE/cake/
4

1 回答 1

2

当我没有在目标目录上正确设置权限时,我经常收到此错误。出于说明的目的,我将假设您正在运行 Apache Web 服务器,并且它以名为www. 该www用户必须对目标目录具有写入权限。这与拥有什么权限无关,而与 Web 服务器用户拥有什么权限有关。

如果您发现这不是问题,更多细节和/或一些代码可能会有所帮助。

于 2010-07-10T02:15:05.800 回答