현재 위치: > 최신 기사 목록> PHP 파일 보안 필터링 업로드 : 사진 및 멀티미디어의 효과적인 검증 및 처리

PHP 파일 보안 필터링 업로드 : 사진 및 멀티미디어의 효과적인 검증 및 처리

M66 2025-06-10

PHP 데이터 필터링 : 사용자가 업로드 한 사진 및 멀티미디어 파일을 안전하게 처리합니다.

최신 네트워크 응용 프로그램에서는 사용자가 사진 및 멀티미디어 파일을 업로드 해야하는 일반적인 요구 사항이되었습니다. 그러나 파일 업로드의 보안을 보장하고 잠재적 위험을 피하는 방법은 모든 개발자가주의를 기울여야하는 문제입니다. 이 기사는 사용자가 제공 한 사진 및 멀티미디어 파일을 효과적으로 확인하고 안전하게 처리하는 데 도움이되는 코드 예제로 보완 된 데이터 필터링에 PHP를 사용하는 핵심 방법을 소개합니다.

업로드 된 파일의 확장을 확인하십시오

먼저 업로드 된 파일이 허용 이미지 또는 멀티미디어 형식에 속하는지 확인해야합니다. 파일 확장자를 확인하면 분명히 준수하지 않는 파일 유형을 필터링 할 수 있습니다.

 $allowedExtensions = ['jpg', 'jpeg', 'png', 'gif'];  
$uploadedFileExtension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);  
if (!in_array(strtolower($uploadedFileExtension), $allowedExtensions)) {
echo "다음 파일 유형 만 허용됩니다:jpg, jpeg, png, gif";
exit;
}

위의 코드는 pathinfo () 함수를 사용하여 파일 확장자를 얻고 in_array () 함수를 통해 허용 범위 내에 있는지 여부를 결정합니다.

업로드 된 파일의 마임 유형을 확인하십시오

확장자가 중요하지만, 더 정확한 검증은 파일의 마임 유형을 통해서입니다. PHP의 내장 FINFO_FILE () 함수는 가장 무도회 파일의 업로드를 방지하기 위해 실제 마임 유형의 파일 유형을 가져올 수 있습니다.

 $allowedMimeTypes = ['image/jpeg', 'image/png', 'image/gif'];  
$uploadedFileMimeType = finfo_file(finfo_open(FILEINFO_MIME_TYPE), $_FILES['file']['tmp_name']);  
if (!in_array($uploadedFileMimeType, $allowedMimeTypes)) {
echo "다음 파일 유형 만 허용됩니다:jpeg, png, gif";
exit;
}

MIME 유형 확인을 통해 업로드 보안을 크게 향상시킬 수 있습니다.

업로드 된 파일의 크기를 제한하십시오

서버 리소스를 저장하고 대형 파일의 악의적 인 업로드를 피하려면 업로드 크기를 제한해야합니다.

 $maxFileSize = 10 * 1024 * 1024; // 10MB  
if ($_FILES['file']['size'] > $maxFileSize) {
echo "파일 크기를 업로드 할 수 없습니다10MB";
exit;
}

이 예제는 파일 크기를 10MB로 제한하고 초과하면 업로드가 거부됩니다.

안전한 스토리지 업로드 파일

파일 확인이 전달되면 파일 이름 충돌 및 경로 누출을 방지하기 위해 파일을 안전하게 저장해야합니다.

 $uploadDirectory = 'uploads/';  
$uploadedFileName = $_FILES['file']['name'];  
$uploadedFileTempName = $_FILES['file']['tmp_name'];  
$newFileName = uniqid('', true) . '.' . $uploadedFileExtension;  
$destination = $uploadDirectory . $newFileName;  
if (move_uploaded_file($uploadedFileTempName, $destination)) {
echo "파일이 성공적으로 업로드되었습니다";
} else {
echo "파일 업로드가 실패했습니다";
exit;
}

Uniqid () 함수를 사용하여 파일 덮어 쓰기를 효과적으로 피하기 위해 고유 파일 이름을 생성하십시오.

업로드 된 사진 및 멀티미디어 파일을 안전하게 표시합니다

웹 페이지에 업로드 파일을 표시 할 때는 XSS와 같은 보안 문제를 피하기 위해 HTML 태그를 올바르게 사용하는지 확인해야합니다. 사용 가능한 이미지 태그이지만 파일 소스와 경로는 엄격하게 제어해야합니다. 멀티미디어 파일을 사용할 수 있습니다

요약

PHP 데이터 필터링은 파일 확장, MIME 유형 및 크기 제한을 포괄적으로 검증하여 사용자의 보안을 효과적으로 업로드하는 사진 및 멀티미디어 파일을 보장 할 수 있습니다. 이 기사의 샘플 코드가 실제 프로젝트에서 업로드 된 데이터를 처리하는 데 도움이되기를 바랍니다.