이번에 제가 당한 약간은 당황스러운 경험에 대해 말씀드리죠.
OS - Linux 2.2.16 (redhat)
Web server - apache 1.3.12
php - php 4.0.4pl1
oracle - server 리눅스용 8.1.6 (원격 DB)
client 리눅스용 8.1.6 (로컬)
그 전까지 이런 환경에서 리모트에 있는 오라클 816을 잘 사용하고 있었습니다.
php 4.0.4를 oci8 서포트로 컴파일하여 아파치에 DSO로 물려 사용하고 있었죠.
문제는 웹서버에 다른 도메인을 추가하여 VirtualHost를 사용할때 발생하였습니다.
httpd.conf에 아무 이상도 없고 apachectel 스크립트 혹은 그냥 httpd 를 실행
하여도 잘 실행되는 듯이 보였습니다만, 실제로는 데몬이 뜨질 않았습니다. 에러
로그에는 아무런 메세지 조차 없었구요. (정상적으로 부팅되었다는 메세지가 없
었습니다.)
httpd.conf에서 VirtualHost에 관한 사항만 빼면 잘 돌아가는데 VirtualHost에 관
한 사항이 들어가면 apache 데몬이 전혀 뜨질 않았죠.
결론은 php의 문제였죠. 더 정확히 말하면 php컴파일시 oci8 서포트 때문이었죠.
php컴파일시 oci8을 추가하면 오라클 클라이언트 라이브러리(libclntsh.so)를 이
용하는데 설치되어 있던 클라이언트 816에 뭔가 문제가 있던 모양입니다.
결국은 오라클 클라이언트만 805로 설치하여 libclntsh.so 를 다시 만들고 이것으
로 php를 컴파일하니 아무 문제가 없더군요.
이문제로 이틀동안 고생 했습니다. 혹시라도 저와 같은 문제로 고민하신다면 참
고가 되셨으면 합니다.
|