的Apache/2.2.15(的Win32)PHP/5.3.2無法上傳文件到Apache 2.2
我想上傳文件到Apache和我的PHP腳本告訴我一切順利(狀態碼0),但該文件不在臨時目錄中。無論文件大小如何,PHP的答案總是立即生效。 PHP錯誤日誌根本不顯示任何錯誤。
Apache服務器以其自己的用戶帳戶運行,可以完全訪問日誌和文檔文件夾。
的php.ini
file_uploads = On
upload_tmp_dir =
upload_max_filesize = 10M
upload_tmp_dir="C:\WINDOWS\Temp"
send.html
<!DOCTYPE html>
<html>
<body>
<form enctype="multipart/form-data" action="upload.php" method="post" >
<input type="hidden" name="MAX_FILE_SIZE" value="10000000" />
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
</body>
</html>
upload.php的
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
echo '<pre>';
print_r($_FILES);
echo '</pre>';
?>
結果看起來是這樣
Array
(
[userfile] => Array
(
[name] => strings.lua
[type] => application/octet-stream
[tmp_name] => C:\WINDOWS\Temp\phpC0.tmp
[error] => 0
[size] => 9935
)
)
文件C:\ WINDOWS \ Temp \ phpC0.tmp不存在。
有沒有其他考慮/配置我錯過了? Apache服務器已經運行PHP超過5年,並在所有其他方面工作正常。我無法將Apache或PHP升級到新版本,因爲這是生產中的應用程序,客戶不會冒險升級。
因此,在PHP腳本結束後,文件將從臨時目錄中刪除? –
@MaxKielland是的。你必須馬上做點什麼,否則它就消失了。 – jszobody