
FreeBSD 7.1 서버에 문제가 있습니다. PHP의 GD 구현은 더 이상 PNG 이미지에서 작동하지 않습니다. 시스템이 PNG 이미지 작업을 시도할 때마다 다음 세 가지 오류 메시지가 나타납니다.
[2009년 7월 18일 토요일 21:41:15] [오류] [클라이언트 90.34.34.34] PHP 경고: imagecreatefrompng() [function.imagecreatefrompng]: gd-png: 치명적인 libpng 오류: [00][00][00][ 00]: /usr/storage/www/private/mikkel.hoegh.org/modules/acquia/imageapi/imageapi_gd.module의 44행에 있는 알 수 없는 중요 청크, 참조자: http://mikkel.hoegh.org/admin/build /이미지캐시/3 [2009년 7월 18일 토요일 21:41:15] [오류] [클라이언트 90.34.34.34] PHP 경고: imagecreatefrompng() [function.imagecreatefrompng]: gd-png 오류: setjmp는 /usr/storage/www/private에서 오류 조건을 반환합니다. /mikkel.hoegh.org/modules/acquia/imageapi/imageapi_gd.module 44행, 참조자: http://mikkel.hoegh.org/admin/build/imagecache/3 [2009년 7월 18일 토요일 21:41:15] [오류] [클라이언트 90.34.34.34] PHP 경고: imagecreatefrompng() [function.imagecreatefrompng]: 'sites/mikkel.hoegh.org/files/imagecache_sample.png'는 44행의 /usr/storage/www/private/mikkel.hoegh.org/modules/acquia/imageapi/imageapi_gd.module에 있는 유효한 PNG 파일, 참조자: http://mikkel.hoegh.org/admin/build/imagecache/ 삼
나는 지금 반나절 동안 이 문제를 해결하려고 노력했는데, 내가 찾은 가장 좋은 단서는 다음과 같습니다.같은 문제를 겪고 있는 다른 남자– 하지만 거기에는 해결책이 없습니다.
문제의 코드는 매우 간단합니다.imagecreatefrompng($filename);
내가 생각할 수 있는 모든 패키지의 패키지 버전은 다음과 관련이 있을 수 있습니다.
- PHP5-5.2.10
- php5-gd-5.2.10
- png-1.2.37
- gd-2.0.35_1,1
어떤 단서가 있나요?
답변1
업데이트하기 전언제나읽다
/usr/ports/UPDATING
때로는 재귀적인 포트 업그레이드를 수행해야 할 때도 있습니다. 즉,
portupgrade -fr png-1.2.37
답변2
이 명령은 내 문제를 해결합니다.
portupgrade -fr png-1.2.40
답변3
portmaster를 사용하는 경우 다음과 같이 작동합니다.
portmaster -dbrR png-1.2.40
답변4
PNG 이미지에 문제가 있을 수 있습니다. 매우 작은 흑백 PNG 이미지로 매우 기본적인 코드를 사용해 보세요. 로그 파일에서도 동일한 오류가 발생하는 경우 php_gd와 같은 모듈이 최신 버전으로 업데이트되도록 소스에서 PHP를 설치하는 것을 고려할 수 있습니다.
설정을 시도해 볼 수도 있습니다.
error_reporting = E_ALL
display_errors = On
화면에 더 나은 오류 메시지가 표시되는 경우를 대비해. display_errors=Off
프로덕션 서버에서 디버깅을 마친 후에 make를 수행하는 것을 잊지 마세요 .