php 이미지 파일 다운로드

사용자가 스크립트를 변경 하 여 서버에서 파일을 다운로드 하는 것을 방지 하려면 파일 이름이 $ _GET 메서드를 사용 하 여 URL에 쿼리 문자열로 전달 되어서는 안 됩니다. 항상 $ _POST 메서드를 사용 하 여 파일 이름을 제출할 때마다 양식과 함께 보냅니다. 파일을 작성할 때 일반적으로 임시 및 최종 위치 둘 다에 대 한 사용 권한을 설정 하는 데 필요한는 file 쓰기. 둘 중 하나가 읽기 전용으로 설정 되 면 프로세스가 실패 합니다. HTTP 헤더 문자열 매개 변수는 캐시 제어: 아니요 캐시 또는 캐시 제어로 설정 됩니다. 이는 파일에 대 한 대부분의 정보가 캐시 되므로 캐시를 제어 하는 것이 중요 하기 때문입니다. 값을 생략 하면 원래 파일 이름이 사용 됩니다. 이 함수에는 GD 이미지 라이브러리가 필요 하지 않습니다. 파일에서 읽은 바이트 수를 반환 합니다. 오류가 발생 하면 FALSE가 반환 되 고 함수가 @readfile ()로 호출 되지 않은 경우 오류 메시지가 인쇄 됩니다. 위의 예제 코드가 주의 해 서 표시 되 면 다운로드 링크 파인트를 “다운로드. p h p” 파일로 찾을 수 있으며 URL에는 이미지 파일 이름도 쿼리 문자열로 포함 되어 있습니다.

또한 파일 이름이 URL 안전 하지 않은 문자를 포함할 수 있으므로 URL 매개 변수로 안전 하 게 전달할 수 있도록 이미지 파일 이름을 인코딩하는 데 PHP urlencode () 함수를 사용 했습니다. 다음은 지정 된 파일의 크기를 반환 하는 크기 () 함수입니다. 참고: 그것은 주어진 이름 로고와 함께 서버에 이미지를 저장 합니다. 에서 정보는 upload_tmp_dir 파일 업로드에 사용 되는 임시 디렉터리를 설명 하 고 업로드할 수 있는 파일의 최대 허용 된 크기는 upload_max_filesize로 명시 되어 있습니다. 이러한 매개 변수는 php 구성 파일 php .ini로 설정 됩니다. 일부 형식은 이미지가 포함 되어 있지 않거나 여러 이미지를 포함할 수 있습니다. 이러한 경우 getimagesize ()는 이미지 크기를 올바르게 결정 하지 못할 수도 있습니다. getimagesize ()는 이러한 경우 너비와 높이에 대해 0을 반환 합니다. 이제이 방법의 유일한 문제는 기본적으로 1로 설정 되는 allow_url_fopen 구성을 설정 해야 한다는 것입니다. 그러나 때로는 프로젝트 요구 사항이이 옵션을 허용 하지 않습니다.

이는 일부 예방 보안 조치 또는 단순한 설계 원칙 때문일 수 있습니다. 이 경우 이미지를 저장 하는 다른 방법이 있습니다.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.