我试图在PHP中testing一个http图像上传function。 我已经在OSX(本地)和Ubuntu(远程)上的Apache上尝试了这一点。
在php.ini中,我设置了upload_tmp_dir = /var/tmp/http-upload 。 tmp和http-upload权限都设置为drwxrwxrwt 。
每次我尝试上传,我得到一个错误,该文件不存在于临时位置。
我在configuration中丢失了什么?
实际的上传function是:
if ($_FILES) { $target_path = '/assets/logos' . basename($_FILES['logo']['name']); } if (move_uploaded_file($_FILES['logo']['tmp_name'], $target_path)) { echo 'success'; } else { echo 'fail'; }
具体的错误是:
Warning: move_uploaded_file(/logos/1317156765-shinetsu.gif): failed to open stream: No such file or directory in upload.php on line 8 Warning: move_uploaded_file(): Unable to move '/tmp/http-upload/php8CNWja' to '/logos/1317156765-shinetsu.gif' in upload.php on line 8 fail
我怀疑它试图将您上传的文件移动到/ assets / logos,vs / var。 您可能想要尝试使用./assets/logos,或以某种方式获取您的网站的基本目录。