위즈군의 라이프로그
Reboot... Search /

[PHP] imagecreatefromjpeg 죽는 현상 (error) 처리

2008.06.30 17:11
PHP에서 이미지 프로세싱을 하다 보면 그냥 죽어버리는 현상이 나타나는 경우가 있습니다.
죽는 다는 것은 에러도 리턴도 없이 말 그대로 그냥 죽어버리는 것입니다.
에러에 대한 예외 처리도 발생하지 않기 때문에 보니 페이지가 출력되다 그 상태로 멈춰버리는 경우입니다.

그래서 소스를 추적해보니, 용량이 큰 이미지 파일을 처리 할 때 imagecreatefromjpeg 부분에서 죽고 프로세스가 종료되는 것을 확인 했습니다.

이 현상은 이미지 프로세싱에 필요한 충분한 메모리가 확보되지 않았기 때문에 발생하는 경우입니다.
해결 방법은 php.ini 파일에서 php용 메모리를 확보해주는 것 입니다.

php.ini 파일은 /usr/local/lib/ 에 위치합니다. 저 같은 경우 /usr/local/lib/ 에 링크로 구성되어 있었습니다.

php.ini 파일 수정
vi를 이용해 /usr/local/lib/php.ini 파일을 열어 줍니다.
memory_limit 설정값을 찾아 줍니다.
memory_limit = 32M      ; Maximum amount of memory a script may consume (8M)

기본 값은 8M인 것 같습니다. 이 값을 적절하게 수정 해주시면 됩니다.
저는 36M로 설정을 했습니다. 현재 까지는 2M 정도의 용량을 가진 사진 파일을 이미지 프로세싱 하는데 문제가 없습니다.
메모리를 너무 많이 할당하면 시스템이 죽어버릴 수도 있습니다. 적절한 값을 찾아서 사용하세요.
php는 처음이라 상당히 힘이 드네요. 즐거운 하루 되세요.
신고
thankee 2008.07.01 00:17 신고 E / R
좋은 정보 감사합니다^^ 이제 이미지 처리시 문제가 생기면 보다 더 쉽게 해결할 수 있겠네요^^
위즈 2008.07.01 00:42 신고 E
도움이 되셨다면 다행입니다.^^
Name : Password : Blog : ( )

위즈군의 라이프로그

Category

전체 (569)
개발 (0)
정보 (0)
일상 (0)
정리중 (569)
Total:2,093,643
Today:210 / Yesterday:442
Daum 코드
Powered by Tistory / Skin by 위즈 / Copyright Click Here 라이센스정책 rss 2.0