Apache-2.2
無法上傳到 tmp 目錄
我正在嘗試在 PHP 中測試 http 圖像上傳功能。我已經在 OSX(本地)和 Ubuntu(遠端)上的 Apache 上嘗試過這個。
在 php.ini 中我設置了
upload_tmp_dir = /var/tmp/http-upload
. 兩者tmp
和http-upload
都將權限設置為drwxrwxrwt
。每次我嘗試上傳時,我都會收到一個錯誤,即臨時位置中不存在該文件。
我的配置中是否缺少任何內容?
實際的上傳功能是:
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,而不是 /var。您可能想嘗試使用 ./assets/logos,或者以某種方式獲取您網站的基本目錄。