아파치 소스디렉으로 이동.
[localhost@apache_1.3.12]#./configure --prefix=/usr/local/apache(아파치설치디렉토리)
--activate-module=src/modules/php4/libphp4.a --enable-rule=SHARED_CORE
--enable-module=so [엔터]
위의 명령어를 1줄에 입력
[localhost@apache_1.3.12]#make [엔터]
[localhost@apache_1.3.12]#make install [엔터]
[localhost@apache]#cd conf [엔터]
httpd.conf 파일을 open
#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
라인 추가
/usr/local/lib/php.ini 파일을 열고 다음라인을 찾아 수정
.....
magic_quotes_sybase=on (수정)
.....
include_path=.:/usr/local/bin (수정)
.....
upload_tmp_dir=/tmp (추가)
.....
아파치설치디렉으로이동
/usr/local/apache/bin/apachectl 과 /etc/profile 파일을 열고 상단에 다음라인 추가
export ORACLE_BASE=/oracle/app/oracle/product/8.1.5(오라클설치디렉토리)
export ORACLE_HOME=/oracle/app/oracle/product/8.1.5(오라클설치디렉토리)
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
export ORACLE_SID=ORCL
위의설정은 아파치실행시 오라클함수를 물고 들어가기위해서임(굳이 전역변수 /etc/profile에는 넣을 필요는 없지만 나의 경우엔 아파치가동시 오라클함수를 물고가지를 못해 전역변수선언해서야
PHP에서 오라클함수가 인식가능)
이상과 같이 하면 설정은 제대로 setting.
----- 아파치 재실행 과 전역변수 실행(# source /etc/profile [엔터]) ------
php에서 OCILogon("id","pwd",[sid]) 함수를 call 할 경우 db서버쪽에서는
[sid]부분을 생략해도 가능할지 모르나 클라이언트에서는 [sid]부분에
$oracle_home/network/admin/tnsnames.ora파일 부분의 서비스이름을 반드시 써야 함.
그전에 DB서버쪽에는 $oracle_home/network/admin/listener.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);
?>
그전에 Table이 생성되어 있어야하며 값들중에 한글도 넣고 실행해 보시고
$sqlplus [엔터] 로 확인해 보세요.
jdk1.2.2 설치(jdk_1.2.2-v5-glibc-x86.tar.gz)
- 소스나 rpm or package로 설치해도 상관없슴.
/usr/local에 복사한후
tar zxvf jdk_1.2.2-v5-glibc-x86.tar.gz
ln -s /usr/local/jdk1.2.2 jdk
vi /etc/profile 엔터
PATH="$PATH:/usr/local/java/bin"
export CLASSPATH="$CLASSPATH:/usr/local/jakarta-tomcat/lib/servlet.jar:
/usr/local/jdk/lib/tools.jar:/usr/local/jakarta-tomcat/lib/webserver.jar" 하고 저장
tomcat3.1 설치
jakarta_tomcat.tar.gz를 /usr/local에 복사
tar zxvf jakarta_tomcat.tar.gz
jakarta-tomcat/bin 에서 ./startup.sh -f 한다.
그리고 http://localhost:8080/을 방문한다.
고양이 한 마리 봤으면 성공!! 일단 종료를 한다.
종료하기: ./shutdown.sh -f를 한다.
다음 아파치와 연동 해야 된다.
http://localhost를 방문하여 아파치 서버가 가동 되는지 확인 한다.
가동되고 있다면 위에서 받은 mod_jserv.so 파일을 apache/libexec에 복사 하고
conf/httpd.conf의 제일 마지막에 다음과 같이 쓴다.
LoadModules=jserv~(/usr/local/jakarta-tomcat/conf/tomcat-apache.conf의
맨 윗줄부분을 적어줌)
Include /usr/local/jakarta-tomcat/conf/tomcat.conf
이렇게 하고 아파치를 다시 가동 시킨다.
(제대로 되지 않으면 아파치를 다시 깔아야 한다.)
****
만약 에러가 발생하시는 분이 있을 겁니다.
module를 로드 할 수 없거나 파일이 없다고 나올 겁니다.
그런 경우 아파치를 설치할 때 RPM 등의 패키지로 하지 않고
직접 컴파일 한 경우입니다.
이때는 아파치 configure 명령 실행시 다음 옵션을 주고 다시
컴파일 하십시요..
--enable-rule=SHARED_CORE --enable-module=so
그러나 우리는 아파치컴파일할때 해주었으므로 상관없슴.
tocmcat을 다시 가동 하고
이번에는 http://localhost로 방문한다.
여기서 고양이 한마리가 뜨야한다(저는 잘 안되었슴)
잘됩니까??
저는 http://localhost:8080로 해야 뜸..-_-!!
html문서는 /usr/local/jakarta-tomcat/wepapps/ROOT 에 넣고
Browser에서 http://localhost:8080/*.html
Java의 Servlet 문서는 /usr/local/jakarta-tomcat/wepapps/ROOT/WEB-INF/classes 에 넣고
Browser에서 http://localhost:8080/servlet/servlet파일명
이 실행이 되면 Java Servlet이 연동....
여기까지 해서 안되는 경우 또는 더 많을 것을 하고 싶은 경우는?
1) DB에서 쓰는 드라이버는 어디에 넣고 하죠
/usr/local/jakarta-tomcat/lib 에 모두 넣으세요... 그러면
tomcat이 기동 될때 클래스 패스로 잡아 줍니다.
2) 기존에 만들어진 디렉토리는 admin, test, examples 가 있는데
새로운 디렉토리(context)를 만드는 방법은?
http://localhost/admin 을 방문하시면 이것도 ~localhost:8080/admin 로 방문...
context 보기, 추가, 삭제가 나옵니다.
거기서 추가 해 주면 됩니다.
예를 들어) baseball 이라는 것을 만들고 싶으면
/baseball webapps/baseball 이라고 각각 쓰고 버튼 클릭을 하세요.
그리고 결과를 보세요.. 그리고 webapps/baseball 아래에 examples 와
동일한 디렉토리명을 만들고 conf/tomcat.conf 에 아래와 같이 적어 주세요.
ApJServMount /baseball /root
그리고 server.xml에 다음을 추가 하세요
<Context path="/baseball" docBase="webapps/baseball" debug="0"
reloadable="true" >
</Context>
|