-
- [root@jbxue achievo]# php -v
- PHP 5.3.6(cli)(빌드: 2011년 8월 19일 19:35:20)
- Copyright (c) 1997-2011 The PHP Group
- Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
코드 복사
둘, PHP화하다
1. phpize란 무엇인가
phpize는 php 확장 모듈을 확장하는데 사용되며, phpize를 통해 php 플러그인 모듈을 생성할 수 있습니다.
PHP를 설치할 때 phpize를 사용해야 합니다.
-
- './configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' ' --with-zlib-dir' '--with-freetype-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd -native-ttf' '--with-gd' '--enable-ftp' '--with-iconv' '--with-gettext' '--with-curl' '--enable-fastcgi' '-- with-openssl'
코드 복사
때때로 더 많은 모듈을 추가해야 하는데 PHP를 다시 컴파일하고 싶지 않은 경우가 있습니다. 이 경우 phpize를 사용하여 플러그인 모듈을 지원할 수 있습니다.
2. phpize를 어떻게 사용하나요?
php가 컴파일되면 php의 bin 디렉터리에 phpize 스크립트 파일이 생성됩니다.
추가할 확장 모듈을 컴파일하기 전에 다음 phpize를 실행하면 됩니다.
-
- # 컴파일 중에 일부 모듈을 추가하는 것을 잊어버린 경우 이 방법을 사용하여 다시 컴파일하고 추가할 수 있습니다!
- # 먼저 PHP 디렉터리(컴파일되지 않음)의 확장 디렉터리를 입력합니다.
- cd /home/soft/php-5.2.14/ext/ftp/
- # phpize 프로그램을 호출하여 컴파일 구성을 생성합니다. file
- # find / -name phpize
- /usr/local/php/bin/phpize
- 구성 대상:
- PHP Api 버전: 20041225
- Zend 모듈 Api 번호: 20060613
- Zend Extension Api No: 220060519
- # 확장 라이브러리 컴파일
- /configure –with-php-config=/usr/local/php/bin/php-config
- make
- # make가 성공적으로 실행된 후, 생성된 확장 라이브러리 파일은 현재 디렉터리의 모듈 하위 디렉터리
- 에 있습니다. # php.ini 문서를 편집하고, Extension_dir 디렉터리를 찾은 다음, 컴파일된 확장 파일을 확장
- vim /usr/local/php에 복사하세요. /etc/php.ini
- # 491행
- # Extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/”
- cp ftp.so /usr/local/php/ lib/php/extensions/no-debug-non-zts-20060613/
- # php.ini의 확장 라이브러리 추가 위치에 추가할 확장 라이브러리를 설정합니다.
- # 612에 확장명=ftp.so 추가
- # 웹 서비스 다시 시작
-
코드 복사
--------- - -------------------------------------------------
181의 PHP 소스 코드 위치는 다음과 같습니다.
/root/software/php-5.3.6
위 플랫폼에 Xenforo 포럼을 설치해 보십시오. 설치가 시작되면 다음 메시지가 나타납니다.
서버가 XenForo를 실행할 수 있는지 확인하는 동안 다음 오류가 발생했습니다.
* 필수 PHP 확장 MySQLi를 찾을 수 없습니다. 호스트에게 이 확장을 설치하도록 요청하세요.
* 필수 PHP 확장 GD를 찾을 수 없습니다. 호스트에게 이 확장을 설치하도록 요청하세요.
PHP는 소스코드에서 컴파일되어 설치되기 때문에 위의 두 확장 기능은 설치되지 않습니다. 다음은 이 두 확장 기능을 PHP에 추가하는 과정입니다.
1. GD 확장 프로그램을 설치합니다.
1. GD 라이브러리 확장에 필요한 소스 코드 패키지를 다운로드하여 설치합니다. (소스 코드 패키지를 클릭하여 직접 다운로드할 수 있습니다.)
gd-2.0.35.tar.gz http://www.libgd.org/releases/
jpegsrc.v8b.tar.gz http://www.ijg.org/
libpng-1.5.0.tar.gz http://sourceforge.net/projects/libpng/
freetype-2.4.4.tar.gz http://sourceforge.net/projects/freetype/
zlib-1.2.3.tar.gz
2. 각 소스 코드 패키지를 별도로 컴파일하고 설치합니다.
1) zlib을 설치합니다
-
- tar zxvf zlib-1.2.3.tar.gz
- cd zlib-1.2.3
- ./configure
- make
- make install
코드 복사
2) libpng 설치
-
- tar zxvf libpng-1.5.0.tar.tar
- cd libpng-1.5.0
- cd 스크립트
- mv makefile.linux ../makefile
- cd ..
- make
- make install
코드 복사
3), freetype 설치
-
- tar zxvf freetype-2.4.4.tar.gz
- cd freetype-2.4.4
- ./configure
- make
- make install
코드 복사
4), Jpeg 설치
-
- tar zxvf jpegsrc.v8b.tar.gz
- cd jpeg-8b
- ./configure –enable-shared
- make
- make test
- make install
-
코드 복사
configure에는 여기서 –enable-shared 매개변수가 있어야 합니다. 그렇지 않으면 공유가 되지 않습니다. 생성된 라이브러리.
5) GD 라이브러리 설치
-
- tar zxvf gd-2.0.33.tar.gz
- cd gd-2.0.33
- ./configure –with-png –with -freetype –with-jpeg
- make install
코드 복사
3. PHP를 다시 컴파일하고 설치합니다(즉, 이전 PHP 컴파일 매개변수 뒤에 위 설치와 관련된 매개변수를 추가합니다).
cd php-5.3.4 (이전 PHP 소스코드 디렉터리 입력)
-
- ./configure –prefix=/opt/php –with-mysql=/opt/mysql –with-apxs2=/opt/apache/bin/apxs –enable-track-vars –enable-force-cgi-redirect –with-config-file-path=/opt/php/etc –with-gd –enable-gd-native-ttf –with-zlib –with-png – with-jpeg –with-freetype –enable-sockets
코드 복사
녹색 글꼴 부분은 이전에 PHP를 설치할 때 추가된 매개변수입니다.
이런 식으로 GD 라이브러리를 확장 프로그램이 설치됩니다. 완료되면 Apache를 다시 시작하고 PHP 정보 테스트 페이지에서 gd 항목을 확인하세요.
2. MySQLi 확장을 설치합니다.
여기서는 phpize를 사용합니다. phpize 명령은 PHP 확장 라이브러리 컴파일 환경을 준비하는 데 사용됩니다. 일반적으로 PHP를 설치한 후 PHP가 설치된 bin 디렉터리에서 이 명령을 찾을 수 있습니다.
phpize 명령 실행 후 autoconf와 같은 프롬프트가 나타나지 않으면, autoconf를 설치한 후 다시 실행하시기 바랍니다.
네티즌들은 자신의 시스템의 실제 상황에 따라 다음 지침의 디렉터리 경로를 수정해야 합니다.
PHP 소스 코드 패키지 폴더 아래의 EXT 폴더에는 현재 버전의 사용 가능한 확장 기능이 포함되어 있습니다. mysqli 폴더가 보일 것입니다.
-
- cd /opt/software/php-5.3.4/ext/mysqli
코드 복사
현재 디렉토리에서 phpize 실행
-
- [root@jbxue mysqli]#/opt/php/bin/phpize
- 구성 대상:
- PHP Api 버전: 20090626
- Zend 모듈 API 번호: 20090626
- Zend 확장 API 번호: 220090626
- [root@jbxue mysqli]#./configure –prefix=/opt/mysqli –with-php-config=/opt/php/bin/php -config –with-mysqli=/opt/mysql/bin/mysql_config
- [root@jbxue mysqli]#make
- [root@jbxue mysqli]#make install
코드 복사
설치가 완료되면 확장 프로그램이 있는 디렉터리 경로를 묻는 메시지가 표시됩니다. 예:
/opt/php/lib/php/extensions/no-debug-zts-20090626
필요한 mysqli.so가 이 디렉터리에 있습니다.
다음으로 /opt/php/etc/ 아래의 php.ini 파일을 수정하고 mysqli 확장자를 추가합니다.
-
- extension=/opt/php/lib/php/extensions/no-debug-zts-20090626/mysqli.so
코드 복사
아파치 서비스를 다시 시작하고 PHP 정보 페이지를 다시 열면 MySQLi 항목이 표시됩니다.
|