Published by Lao Gao 2014-10-03 코드라이프 카테고리에서
새로운 환경의 Lao Gao DEDECMS를 설치했는데 백그라운드 인증 코드가 표시되지 않는 것을 발견했습니다. 이 오류를 직접 검색해 보세요. 어떤 사람은 세션이 잘못됐다고 하고, 어떤 사람은 권한이 잘못됐다고 하는 등 말도 안되는 소리 아닌가요! 소스 코드를 보고 /include/vdimgck.php
파일을 찾을 수만 있습니다. 오류 기능은 imagettftext()
입니다. Dreamweaver에서 오류를 숨기기 위해 @
을 사용했기 때문에 이러한 설명할 수 없는 오류가 발생했습니다. @
을 제거하면 오류가 즉시 나타납니다.
치명적인 오류: 정의되지 않은 함수 imagettftext() 호출
이제 우리는 오류의 원인이 무엇인지 확실히 알 수 있습니다. PHP FreeType은 컴파일 시 추가되지 않습니다.
해결책:
먼저 2.4.0을 예로 들어 FreeType을 컴파일하고 설치합니다.
<code><span>wget http://download.savannah.gnu.org/releases/freetype/freetype-<span>2.4.<span>0.tar.bz2 <span>tar -jxf freetype-<span>2.4.<span>0.tar.bz2 <span>cd reetype-<span>2.4.<span>0 <span># 安装到/usr/local/freetype ./configure --prefix=/usr/<span>local/freetype <span>make && <span>make <span>install </span></span></span></span></span></span></span></span></span></span></span></span></span></span></code>
다음으로 PHP를 다시 컴파일하고 매개변수를 추가합니다 --with-freetype-dir=/usr/local/freetype
<code>./configure \ <span>... \ <span>... \ --<span>with-freetype-dir=/usr/local/freetype </span></span></span></code>
컴파일이 완료되고 PHP를 다시 시작하세요
<code>kill -USR2 `<span>cat /usr/local/php/<span>var/run/php-fpm.pid` </span></span></code>
GD 라이브러리에서 FreeType Support
를 찾으면 설치가 성공적으로 완료되었음을 알 수 있습니다!
서버 프리타입 버전이 1.*인 경우 컴파일 매개변수를 --with-ttf[=DIR]
으로 변경해야 할 수도 있습니다. 다음은 ChinaUnix 포럼에서 재현됩니다.
글꼴 라이브러리 구성 스위치
FreeType 1.x FreeType 1.x 지원을 활성화하려면 --with-ttf[=DIR]를 추가하세요.
FreeType 2 FreeType 2 지원을 활성화하려면 --with-freetype-dir=DIR을 추가하세요.
T1lib T1lib(Type 1 글꼴)을 활성화하려면 --with-t1lib[=DIR]을 추가하세요.
네이티브 트루타입 문자열 함수 네이티브 트루타입 문자열 함수에 대한 지원을 활성화하려면 --enable-gd-native-ttf를 추가하세요.
참고:
http://bbs.chinaunix.net/thread-610205-1-1.html
위 내용은 관련 내용을 포함하여 정의되지 않은 함수 imagettftext에 대한 호출 솔루션을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.