0
ajax 및 php으로 사용자의 이미지를 업로드하고 전체 크기 이미지 업로드가 완료되면 압축 된 복사본을 만들어 표시 할 미리보기 이미지로 사용합니다. 13-14MB보다 큰 파일을 업로드하려고 할 때를 제외하고 모두 정상적으로 작동합니다. 이보다 큰 파일의 경우 원래의 전체 크기 파일이 서버에 저장되지만 축소판은 생성되지 않습니다.PHP - 업로드 후 14MB 플러스 파일의 압축 이미지를 저장할 수 없습니다.
업로드 및 압축에 대한 나의 코드는 다음과 같습니다
function compress_image($source_url, $destination_url, $quality) {
$info = getimagesize($source_url);
if ($info['mime'] == 'image/jpeg'){$image = imagecreatefromjpeg($source_url);}
else if ($info['mime'] == 'image/gif'){$image = imagecreatefromgif($source_url);}
else if ($info['mime'] == 'image/png'){$image = imagecreatefrompng($source_url);}
imagejpeg($image, $destination_url, $quality);
return $destination_url;
}
if(isset($_POST['folder'])){
$filename = $_SERVER['HTTP_X_FILE_NAME'];
$final_img = $_SESSION['dir']."/".$_SESSION['folder']."/".$filename;
// UPLOAD FULL IMAGE
if (file_put_contents($final_img, file_get_contents('php://input'))){
// CREATE COMPRESSED THUMBNAIL
if(compress_image($final_img, $_SESSION['dir']."/".$_SESSION['folder']."/thumbs/".$filename, 50)){
// continue
}
else{
// error
}
}
else {
// no post
}
내가 원래 내가 심지어 내 php.ini
파일에 다음까지 여러 가지 구성을 시도 그래서 포스트 또는 메모리 한계로 인한라고 생각 (그리고이 phpinfo()
을 사용하여 값을 확인했지만 업데이트 됨) 다시 운이 없습니다. 모든 분류
post_max_size = 1G
upload_max_filesize = 1G
memory_limit = 1G
버그 사용자가 거대한 이미지를 업로드하려고 시도 할 때 서버가별로 만족스럽지 않고 압축이 실패하는 것처럼 매우 위험합니다. 아마도 더 낮은 업로드 최대 파일 크기를 정의해야합니다. – COil
안녕하세요, 미안 해요 내가 분명히 했어야 - 난 단지 작동하지 않는 것을 보여주기 위해 이러한 큰 값을 사용했다 - 지금은 실제 PHP 파일에서 낮은 값을 사용했습니다 –