저는 솔라리스를 사용해 보지 않아서 정확히는 모르겠습니다.
단지 상식 수준에 맞추어서 설명을 하도록 하겠습니다.
NOBODY 로 웹에서 접속 할 경우에는 httpd 의 소유자의 사용환경을 따를 것이라고 생각할 수 있습니다.
그러므로 httpd 를 뛰우기 전에 그 스크립트에서 저 환경변수를 설정하고 나서 다시 웹데몬을 뛰우는 것입니다.
즉 apache 를 사용한다면, apachectl 이라는 스크립트를 통해서 httpd 데몬을 뛰우잖아요. 이 apachectl 이라는 스크립트 의 첫부분에 저 환경 변수를 설정해 주고 나서 httpd 를 뒤워 주는 방법이 있을 것 같습니다.
다음으로 CGI 에서 setenv 명령어로 강제로 환경 변수를 설정해 준다음 접속하는 방법이 있을 것 같습니다.
해보지는 않았습니다. (솔라리스가 없습니다. /./) 혹시 해 보시고 성공적인 방법이 있다면 알려 주시면 감사드리겠습니다.
아니면 차라리 LD_LIBRARY_PATH 에 라이브러리 디렉토리를 설정해 주는 방법은 어떨까요.
> 안녕하세요?
>
> 밑에 답변주신 두분 모두 감사드립니다.
> 지금 대충 솔라리스 서버에는 성공적으로 세팅을 했는데요.
> 또 다른 문제점이 생겼습니다.
> 제가 만든 cgi프로그램이 nobody로 접속했을때는
> 라이브러리디렉토리를 찾지 못하는 겁니다.
> 그냥 쉘 상에서 실행해보았을때
> 그런 문제가 있어서
> PGLIB, PGDATA, USER등 환경변수를 세팅해 주었는데요
> 그러니까 쉘 상에서는 되더군요.
> 그런데 아무리 해봐도 nobody로는 안되는 것 같습니다.
> 리눅스와 틀리기 때문에 생기는 문제인 것 같구요.
> 어디다가 환경변수를 지정해 줘야 하는지
> 아신다면 도와주시기 바랍니다.
> 그럼~
>
> 최동욱
|