php上传文件错误代码3

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php上传文件错误代码3脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
上传更大的文件(> 10KB)将在$_FILES [‘file’] [‘error’]中获得错误代码3(UPLOAD_ERR_PARTIAL),并且小文件(< 10KB)将成功上传. 如果文件超过限制PHP post_max_size或upload_max_filesize,则应该获得错误代码1 UPLOAD_ERR_INI_SIZE.但是,获取错误代码3 UPLOAD_ERR_PARTIAL是不正确的. 我想apache设置有问题,并且不知道如何解决这个问题. 使用以下软件及其版本
> PHP 5.6.17
> apache 2.4.18

以下是PHP.ini:

post_max_size = 8M
file_uploads = On
upload_tmp_dir = "/tmp"
upload_max_filesize = 2M

上传较大文件(hi.png)时,错误记录在/VAR/LOG/httpd-error.log中

PHP Notice:  Missing mime boundary at the end of the data for file hi.png in UnkNown on line 0

这是index.PHP

<!DOCTYPE htML>
<html>
<body>
    <form action='upload.PHP' method='post' enctype='multipart/form-data'>
    Select image to upload:
    <input type='file' name='fileToUpload' id='fileToUpload'>
    <input type='submIT' value='Upload Image' name='submit'>
    </form>
</body>
</html>

和upload.PHP

<?PHP
if($_FILES['fileToUpload']['error'] > 0){
    echo "error code".$_FILES['fileToUpload']['error']."<br>";
}
else{
    echo "file name:".$_FILES['fileToUpload']['name']."<br>";
    echo "file type:".$_FILES['fileToUpload']['type']."<br>";
    echo "file Size:".$_FILES['fileToUpload']['size']."<br>";
    echo "file path:".$_FILES['fileToUpload']['tmp_name']."<br>";

    move_uploaded_file($_FILES['fileToUpload']['tmp_name'],"uploads/".$_FILES['fileToUpload']['name']);
}
?>

解决方法

我在使用PHP 5.6.18和apache 2.4.18的FreeBSD 10.1 jail中遇到了同样的问题:无论设置了哪个限制,7950字节以上的文件都会不断地一直失败并出现错误3.

多年后我终于解决了这个问题:PHP模块(mod_PHP56)是用apache2filter SAPI编译的,但是通过AddHandler作为处理程序启用.解决方案是检查端口选项并使用标​​准选项重建mod_PHP56(不使用AP2FILTER).

长话:检查您是否有端口选项OPTIONS_FILE_SET = AP2FILTER(Apache 2 Filter SAPI),但PHP配置了常规方式作为处理程序(AddType application / x-httpd-PHP .PHP).删除选项(作为认的构建/端口),并重建mod_PHP56包解决了我的问题.

要验证这是否也是您的情况,您可以回显PHP_sapi_name().如果是apache2filter但是通过AddHandler指令启用了PHP,则会遇到同样的问题.重建后,你的PHP_sapi_name()应该是apache2handler.这两个选项也可以在PHPinfo()中分别作为“Apache 2.0 Filter”和“Apache 2.0 Handler”进行检查.

请注意,这并不能解释为什么它实际上破坏了上传(或者为什么模块首先使用Handler配置).你也可以通过启用Mod_PHP作为过滤器而不是处理程序来成功,但我没有在这里检查.

脚本宝典总结

以上是脚本宝典为你收集整理的php上传文件错误代码3全部内容,希望文章能够帮你解决php上传文件错误代码3所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。