avicom의 신변잡기

오라클 - php 연동 본문

oRaCle

오라클 - php 연동

avicom 2007. 4. 13. 22:45
php를 컴파일해서 설치할 때 오라클 연동 옵션을 집어넣으면 ctype에 관련된 에러가 발생한다
컴파일러가 ctype 함수를 더 이상 지원하지 않기 때문인데
오라클 연동옵션을 빼고 php를 설치한 후 DSO 방식으로 OCI8 모듈을 컴파일해서 추가해주면
간단하게 해결할 수 있다.

php 컴파일 옵션
./configure \
--prefix=/usr/local/php4.3 \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mod_charset \
--with-config-file-path=/etc \
--enable-sigchild \
--with-zlib \
--with-gd \
--with-freetype-dir=/usr/include/freetype2  \
--enable-gd-native-ttf \
--with-gdbm \
--enable-calendar \
--with-jpeg-dir=/usr/lib \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm


이후 오라클 환경변수가 설정되어있다는 가정하에 진행해보면,
cd /root/download/php-4.3.11/ext/oci8
/usr/local/php4.3/bin/phpize
./configure --with-php-config=/usr/local/php4.3/bin/php-config --with-oci8
make
cd modules


module 디렉토리에 oci8.so, oci8.la 모듈이 생성된다.
이것은 적당한 디렉토리에 복사해놓고

vi /etc/php.ini

extension_dir=[oci8이 위치한 디렉토리 패스]
extension=oci8.so
그 다음 아파치의 php 관련 설정을 살펴서 다음 두 줄이 없으면 추가.

LoadModule php4_module  modules/libphp4.so
AddType application/x-httpd-php .php


이후 DocumentRoot에 설정된 디렉토리에 php 파일을 만들어서 다음 코드를 입력
<? phpinfo(); ?>
웹브라우저로 확인해보면 php 관련 정보가 뜨는데 OCI8 관련 항목이 있는지 살펴본다.
있으면 연동이 된 상태.