제목: 리눅스에서 PHP 와 ORACLE8i ,APACHE 연동하기
* 환경 : ORACLE 용 리눅스 서버 - 1대
웹서버용 리눅스 서버 - 1대 (PHP.4.0.0 , APACHE1.3.12)
* 이글은 밑에 있는 관련글들과 관련책과 제가 실행한 방법을 나름대로 옮긴 것이기 때문에 개개인의 설정에는 맞지 않을수 있습니다.
------------------------------------------------------------------
1. 먼저 ORACLE CLIENT를 설치한다.
2. apache 소스디렉으로 이동
3. ./configure --prefix=/apache설치할디렉 [엔터]
4. php소스디렉으로이동
5. ./configure --with-oci8=/오라클클라이언트설치디렉 --with-apache=/아파치
소스디렉 --enable-track-vars=yes --with-charset=euc_kr [엔터]
* 5번은 1줄에 입력.
6. make [엔터]
7. make install [엔터]
8. 아파치 소스디렉으로 이동.
9. ./configure --prefix=/아파치설치할디렉 --activate-module
=src/modules/php4/libphp4.a [엔터]
* 9번은 1줄에 입력
10. make [엔터]
11. make install [엔터]
11-1. cd conf [엔터]
11-2. httpd.conf 파일을 open
11-3. #AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps
라인의 주석해제.
Addtype application/x-httpd-php .php3
Addtype application/x-httpd-php .html
Addtype application/x-httpd-php .htm
라인 추가
12. php소스디렉으로 이동
13. cp php.ini-dist /usr/local/lib/php.ini [엔터]
14. php.ini 파일을 열고 다음라인을 찾아 수정
.....
magic_quotes_sybase=on (수정)
.....
include_path=.:/usr/local/bin (수정)
.....
upload_tmp_dir=/tmp (추가)
.....
15. 아파치설치디렉으로이동
16. apachectl 파일을 열고 상단에 다음라인 추가
export ORACLE_BASE=/오라클설치디렉
export ORACLE_HOME=/오라클설치디렉
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
(위 라인은 원격DB에 접속하여 insert등을 할 경우 한글을 사용하기위함으로
DB 서버쪽의 NLS_LANG 설정과 맟추어야 함)
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
이상과 같이 하면 설정은 제대로 setting.
----- 아파치 재실행------
php에서 OCILogon("id","pwd",[sid]) 함수를 call 할 경우 db서버쪽에서는
[sid]부분을 생략해도 가능할지 모르나 클라이언트에서는 [sid]부분에
$oracle_home/network/admin/tnsnames.ora파일 부분의 서비스이름을 반드시 써야 함.
test)
vi test.php
<?php
$conn=OCILogon("id","pwd","서비스이름");
$query='insert into 테이블명 values(값1,값2....값n)";
$stmt=OCIParse($conn,$puery);
OCIexecute($stml);
OCILogOff($conn);
?>
값들중에 한글도 넣고 실행해 보시고 sqlplus로 꼭 확인해 보세요.
여러 고수님들 께서 추가나 삭제할 부분을 수정해 주시면 고맙겠습니다.
|