上传不保存大文件

时间:2013-04-26 02:29:51

标签: php file-upload

我正在尝试创建一个上传表单,但它不会保存大文件,也不会出现任何错误。

我不知道限制的确切位置,但65kb的图像保存得很好,而4mb的图像却没有。对于较大的文件,uploads文件夹只是空的。我可以验证它是否正在上传并查看发送的请求...但是服务器上传文件夹仍为空。

这是我的上传脚本:

<?php
$ds = DIRECTORY_SEPARATOR; 
$storeFolder = 'uploads';  
if (!empty($_FILES)) { 
    $tempFile = $_FILES['file']['tmp_name'];               
    $targetPath = dirname( __FILE__ ) . $ds. $storeFolder . $ds;  
    $targetFile =  $targetPath. $_FILES['file']['name'];  
    move_uploaded_file($tempFile,$targetFile);    
}
?>   

以下是我在php.ini中的相关设置:

max_input_time = -1
memory_limit = 1500M
post_max_size = 1500M
file_uploads = On
upload_max_filesize = 1500M
max_file_uploads = 100
allow_url_fopen = On

仅当您想知道奇怪的设置时,这仅供内部使用。至于我的实际上传页面,它只是一个从W3学校剪下来的简单html。

这是在Ubuntu服务器上的Apache上运行的。该脚本似乎在Windows WAMP设置中正常工作。此外,目录的权限是正确的。

1 个答案:

答案 0 :(得分:2)

编辑完php.ini后,必须重新加载/重新启动apache服务器才能进行所有更改。从命令行发出以下问题之一:

/etc/init.d/apache2 restart 
service apache2 restart

OR

/etc/init.d/apache2 reload
service apache2 reload

4人中的任何一人都会没事;最好是重启选项