커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
*
HanIRC의 #coffeenix 방
[
장비 및 회선 후원
]
> Forum <
IT 일정
N
e
w
!
자동화 프로젝트
HOME
>
네트워크(network)
>
웹 서버(web, httpd, apache)
도움말
검색 :
사이트
WHOIS
웹서버 종류
WebDAV
(7, 글 1, 자료 4)
웹서버 튜닝
(5, 글 4, 자료 2)
웹서버 사용 통계 자료
(2, 자료 1)
Apache SSL / mod_ssl
(4, 글 3, 자료 2)
Oracle 9iAS웹서버+Oracle9i에 php 설치 (AIX 4.3.3)
작성일 : 2003/08/15 22:51
글쓴이 : 좋은진호 (
http://coffeenix.net/
)
조회수 : 37117
[
이전화면
/
수정
] 비밀번호 :
작성자 : 좋은진호(truefeel,
http://coffeenix.net/
)
작성일 : 2002.5.8~9
AIX 4.3.3에서 Oracle 9i와 9iAS 웹서버가 이미 설치된 상태에서 웹에서 php를 쓸 수 있도록 붙이는 과정과
발생할 수 있는 문제를 간략히 설명한다.
< 설치 환경 >
* OS : IBM AIX 4.3.3
* Oracle 9i + Oracle 9iAS 웹서에 php 4.X를 설치
(Oracle 8i가 아닌 9i 여도 php4에서 사용하는데 문제없음)
* 기타 : gcc + gnu make + gzip + bison 등은 설치되어 있음
< 설치 순서 >
zlib, libpng, jpeglib -> GDlib -> PHP4
< 필요한 lib 있는 사이트 >
※ GDLib 다운로드
http://www.boutell.com/gd/
http://www.boutell.com/gd/http/gd-1.8.4.tar.gz
※ zlib 다운로드
http://www.gzip.org/zlib/
※ pnplib 다운로드
http://www.libpng.org/pub/png/pngcode.html
※ AIX용 바이너리 패키지
http://aixpdslib.seas.ucla.edu/
1. php 설치 전에 GD lib를 사용하기 위해서 필요한 lib 설치
1) zlib-1.1.4.tar.gz
libpng-1.2.2.tar.gz
jpeg.6b.tar.Z
(또는
http://aixpdslib.seas.ucla.edu/
에서 받은 바이너리 jpeg.6b-bin.tar.Z 설치)
2) GDlib 설치 (
http://www.boutell.com/gd/gd-1.8.4.tar.gz
)
GDlib 설치위해서 -> zlib, libpng, jpeg lib 필요
a) tar xvfz gd-1.8.4.tar.gz
b) Makefile 파일 수정
CFLAGS=-O -DHAVE_JPEG
LIBS=-lm -lgd -lpng -lz -ljpeg
INSTALL_LIB=/usr/local (확인만)
INSTALL_INCLUDE=/usr/local (확인만)
※ lib(libgd.a)와 header(*.h)는 각 /usr/local/lib와 /usr/local/include에 설치됨
c) make
d) make install
2. PHP4 컴파일
1) 9ias 웹서버 홈 디렉토리가 /oracle/ias 일 때
/oracle/ias/Apache/Apache/bin/apxs 스크립트의 첫 줄 수정
#!/oracle/ias/Apache/... 에
-I/oralce/ias/Apache/perl/lib/5.00503 옵션을 추가
2)
./configure --with-apxs=/oracle/ias/Apache/Apache/bin/apxs \
--with-config-file-path=/oracle/ias/Apache/Apache/conf \
--prefix=/oracle/ias/Apache/Apache/php \
--with-oci8=/oracle/app/oracle/product/9.0.1 \
--with-oracle=/oracle/app/oracle/product/9.0.1 \
--enable-safe-mode -enable-debugger --enable-track-vars \
--without-mysql --enable-sigchild \
--with-zlib=/usr/local --with-gd=/usr/local --with-jpeg-dir=/usr/local \
--with-regex=system
※ - 9ias 웹서버 홈 디렉토리는 /oracle/ias
- Oracle 9i 홈 디렉토리는 /oracle/app/oracle/product/9.0.1 인 경우임
- MySql은 사용 안하므로 --without-mysql
(옵션을 넣지 않을 경우 컴파일시 오류 발생할 수 있음)
- GD lib을 사용하기 위해 --with-zlib=/usr/local --with-gd=/usr/local --with-jpeg-dir=/usr/local
3) make
성공적(몇몇 warning은 무시)으로 컴파일이 되더라도 libtool의 버그(?)로 인해서
libs/ 디렉토리에 libphp4.so 파일이 만들어지지 않는다.
따라서 .libs/libphp4.so.0 파일을 lib/libphp4.so 이름으로 복사
# ls .libs
libphp4.a libphp4.exp libphp4.la libphp4.lai libphp4.so.0
# cp -p .libs/libphp4.so.0 libs/libphp4.so
4) make install
... 생략 ...
Making install in .
/work/php-4.2.0/build/shtool mkdir -p "/oracle/ias/Apache/Apache/libexec" && /oracle/ias/Apache/Apache/bin/apxs -S LIBEXECDIR="/oracle/ias/Apache/Apache/libexec" -i -a -n php4 libs/libphp4.so
cp libs/libphp4.so /oracle/ias/Apache/Apache/libexec/libphp4.so
chmod 755 /oracle/ias/Apache/Apache/libexec/libphp4.so
[activating module `php4' in /oracle/ias/Apache/Apache/conf/httpd.conf]
installing shared modules into /oracle/ias/Apache/Apache/php/lib/php/extensions/no-debug-non-zts-20010901
목표 "install-p"은(는) 최근의 것입니다.
Making install in pear
Installing Archive/Tar.php
Installing Console/Getopt.php
Installing PEAR.php
... 생략 ...
Installing Schedule/At.php
Installing header files
Installing build environment
Installing program: phpize
Installing program: php-config
Installing program: pear
Installing program: pearize
Installing program: phptar
Installing program: phpextdist
목표 "install-p"은(는) 최근의 것입니다.
목표 "install"은(는) 최근의 것입니다.
목표 "install"은(는) 최근의 것입니다.
※ 만약 make가 정상적으로 되었는데 다음과 같은 오류가 나왔다면
2)의 libphp4.so 파일 복사 과정을 하지 않아서 발생하는 오류임
-----------------------------------
Making install in .
make[1]: 들어감 `/work/php-4.2.0' 디렉토리
/work/php-4.2.0/build/shtool mkdir -p "/oracle/ias/Apache/Apache/libexec" && /oracle/ias/Apache/Apache/bin/apxs -S LIBEXECDIR="/oracle/ias/Apache/Apache/libexec" -i -a -n php4 libs/libphp4.so
cp libs/libphp4.so /oracle/ias/Apache/Apache/libexec/libphp4.so
cp: libs/libphp4.so: 경로 이름에 있는 파일이나 디렉토리가 존재하지 않습니다.
apxs:Break: Command failed with rc=1
make[1]: *** [install-sapi] 오류 1
make[1]: 나감 `/work/php-4.2.0' 디렉토리
make: *** [install-recursive] 오류 1
-----------------------------------
3. 9ias conf 수정
4. 문제 해결
1. php make할 때 다음과 같은 오류가 나온다면...
... 생략 ...
cc: 1501-218 file ext/mysql/.libs/libmysql.al contains an incorrect file suffix
cc: 1501-218 file ext/oci8/.libs/liboci8.al contains an incorrect file suffix
cc: 1501-218 file ext/pcre/.libs/libpcre.al contains an incorrect file suffix
cc: 1501-218 file ext/posix/.libs/libposix.al contains an incorrect file suffix
cc: 1501-218 file ext/session/.libs/libsession.al contains an incorrect file suffix
... 생략 ...
-> gcc로 컴파일이 되지 않고 cc로 컴파일이 됨. gcc로 컴파일해야 됨(?)
1. gcc는 설치를 했나?
2. 다음과 같이 CC 환경변수를 지정한 후에 configure를 실행하지는 않았나?
export CC='cc -Dinline= -ma'
./configure ...옵션들 생략 ...
--> CC 환경 변수는 없애고 configure 다시 실행
2. 웹에서 오라클 함수를 사용한 php를 실행할 경우 다음과 같은 오류가 나온다면...
Warning: _oci_open_server: ORA-12545: Connect failed because target host or object does not exist
in /web/doc/phps/lib/connect.php on line 4
... 생략 ...
-> 오라클 DB에 접속하는 OCIPLogon 함수 사용을 확인해보라.
OCIPLogon에 리스너명을 지정하면 해결됨.
$conn = OCIPLogon(오라클 ID,PW, 리스너명) or die("Unable to connect to SQL server");
3. php4를 붙여서 9ias를 실행하는데는 문제가 없는데 php만 호출하면 실행되지 않음
(단, phpinfo(); ?> 만 있는 php파일을 호출하면 실행은 됨 )
-> Oracle 9ias error log 파일을 확인해보라.
child process가 제대로 생성되지 않아서 발생할 가능성이 크다.
-> 9ias 홈이 /oracle/ias라고 했을 때 /oracle/ias/Apache/Apache/libexec/libphp4.so
의 파일 크기 얼마인지 확인해보라.
정상적으로 컴파일 됐을 때 약 3M정도였고, 문제가 발생했을 때는 5M 짜리였음.
php4를 다시 컴파일을 해서 정상적으로 생성된 libphp4.so 파일을 이용해야 함
커피닉스 카페 최근 글
[08/25]
#gpt_question_subje
[08/20]
From what I've seen
[08/14]
сайт
[06/16]
[질문]SAN 스위치 브로드케이드 dcx8510-4 장비관련입니다.
[04/22]
Re: 영화속에 컴퓨터 이야기 ~스워드피쉬(2001)
[10/20]
Cross Compiler 깔
[07/14]
SSL АО
[04/26]
Re: 도스화면 원격조종 여부
[04/25]
도스화면 원격조종 여부
[10/30]
Cshell에서 난수 설정
[10/23]
공항철도주식회사 SE 구인 件
[01/26]
Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
[01/25]
wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
[01/11]
특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
[08/01]
DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
N
e
w
! 최근에 등록한 페이지
KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
오픈캐스케이드 캐드 (OpenCASCADE CAD)
QCad for Windows --- GNU GPL (Free Software)
The Hello World Collection
IPMI를 활용한 리눅스 서버관리
DNS 설정 검사
nagiosgraph 설치 방법
Slony-I 설치 방법 (postgresql replication tool)
Qmail기반의 Anti spam 시스템 구축하기
clusterssh
[ 함께하는 사이트 ]
운영진 :
좋은진호(truefeel)
, 야수(yasu), 범냉이, sCag
2003년 8월 4일~