我正在尝试使用PHP脚本上传JPG图像,但该图像一直导致我的脚本超时并死机,并给出此错误:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate
2136 bytes) in image.php on line 38
如果图像太大,或者此错误正常失败,我如何阻止上传?
我目前正在使用PHP框架,并有一个图像上传表单。当我上传小文件时,脚本运行时不会有任何问题,但是当我选择一个文件,比如3mb的文件上传时,脚本就不会运行,会转到一个页面上,并说“页面加载失败”。我检查了php日志和apache日志。PHP日志给出了这个错误。
PHP Fatal error:
Allowed memory size of 33554432 bytes exhausted
(tried to allocate 20736 bytes) in
/Users/Desktop/localhost/system/libraries/Image_lib.php on line 1155
我的php脚本在ASP.NET MVC中遇到了问题。我已经部署到azure服务,并已双重检查PHP是否已启用。
php脚本(upload.php)是:
<?php
if(move_uploaded_file ($_FILES['file'] ['tmp_name'], "Content/{$_FILES['file'] ['name']}")) {
echo "Programme file uploaded successfully. You will be redirected to the
我正在尝试使用aws将一个14 to目录上传到s3。这些是下面的场景及其结果
上传从我的本地系统(印度)到s3(美东-1):成功
从ec2(ap-东南-1)上传到s3(ap-东南-1):成功
从ec2(ap-东南-1)上传到s3(美东-1):失败
下面的代码是我使用的
require('application/classes/vendor/autoload.php');
use Aws\S3\S3Client;
use Aws\Common\Credentials\Credentials;
use Aws\S3\Sync\UploadSyncBuilder;
我在php.ini中设置了"upload_max_filesize=1024M“和"post_max_size=1024M”。
当我通过浏览器上传一个大文件(2048M)时,我发现了一个问题。
文件仍在上传中,而我可以在apache服务器日志(/var/ log /apache)中立即看到上传进度号并获得PHP消息,如下所示:
"PHP Warning: POST Content-Length of 2147483647 bytes exceeds the limit of 1073741824 bytes"
最后,上传作业会失败,因为文件大小大于upload
我讨厌问这样含糊不清的问题,但我真的对我目前的问题一无所知。我正在设置一个新的网站和图像上传失败在我的生产网站(在自定义和内容类型的形式)。当文件足够大(大于~4mb)时,就会发生故障。我认为这个失败更多的是因为时间的安排,而不是文件大小的限制。在我的办公室,那里的连接很好,我可以上传一个8mb的图像,但在我较慢的家庭连接,我不能上传超过4mb的图像。上传似乎总是在20秒左右超时。
当上传失败时,表单本身不会提供任何反馈。蓝色的旋转器消失了,移除按钮也没有出现。我收到的唯一反馈是通过浏览器的控制台。我收到了一个HTTP Result Code: 400错误。路径是好的,因为就像我说的,当图像或