[하얀피]님이 남기신 글:
>안녕하세요.
>아파치 옵션중에 이해가 안되는 것이...
>
>산이님의 책자를 보면..
>--enable-shared=max 가..
>부트스트래핑 so 모듈을 제외한 모든 모듈에 대해
DSO를
>enable/disable 시키는 것이라고 하셨는데...
>
>저는 보통..
># ./configure \
>--prefix=/usr/local/apache \
>--add-module=../mod_throttle/mod_throttle.c \
>--activate-module=src/modules/php4/libphp4.a \
>--enable-module=so \
>--enable-shared=max
># make ; make install
>이정도를 사용하고 있거든요?
>제가 위에서 사용하는 --enable-shared=max의
정의를..
>좀더 자세히 알고 싶습니다.
>
+ enabling mod_so for DSO support
DSO 모듈은 기본적으로 so 모듈을 필요로 하기 때문에
어느 하나가 DSO 로 빌드되면 자동으로 so 모듈은 정적으로
붙습니다.
--enable-shared=max
standard/ 디렉토리에서
mod_access.so mod_asis.so mod_cgi.so mod_imap.so mod_mime.so
mod_status.so
mod_actions.so mod_auth.so mod_dir.so mod_include.so mod_negotiation.so
mod_userdir.so
mod_alias.so mod_autoindex.so mod_env.so mod_log_config.so mod_setenvif.so
이정도의 모듈이 DSO 로 빌드됩니다.
모두 다 DSO 로 빌드되지 않고 mod_rewrite, mod_auth_db 이와 같은
모듈은
제외됩니다. 그 기준은 아파이 버전마다 다를 수 있으므로
반드시 INSTALL 파일을 열어서 확인해야 합니다.
즉 INSTALL 파일에서 `LIST OF AVAILABLE MODULES' 에서
(+) 로 표시되어 있는(기본적으로
enable 됨) 모듈을 DSO 로 빌드함을
의미합니다.
또한 enable-module 로 지정한 모듈(3'th 모듈 제외)도 정적으로
붙지
않고 이것을 DSO 모듈로 빌드합니다.
즉
--enable-module=rewrite \
--enable-shared=max
이렇게 지정하면 rewrite 모듈은 정적으로 붙지 않고 DSO 모듈로
만들진다는 것을 말합니다.
바꾸어 말하면 --enable-shared=max 이 옵션은 enable 되는 모듈을
모두 DSO 로 빌드하겠다는 의미가 되겠죠.
따라서 위의 경우에서 rewreit 모듈은 정적으로 붙이고
이것을 제외한 나머지 enble 되는 모듈을 DSO 로 빌드하고자
한다면
하나씩 저정해야 합니다.
그리고 주의할점이 있는데
--enable-shared=rewrite
이런 하나의 옵션을 사용하면 rewrite 모듈은 DSO 로 만들어지지
않습니다. 즉 rewrite 모듈은 기본적으로 disable 되어 있고
enable 에 대한 아무런 언급이 없기 때문에 결국 DSO 로
만드러지지
않습니다. 이것은 다음과 같이 지정해야 정답입니다.
--enable-module=rewrite \
--enable-shared=rewrite
참고로 --enable-shared=remain 이라는 옵션이 있는데 이것은
아직 enable 되어 있지 않은 모듈을 모두 DSO 로 빌드하겠다는
의미입니다.
>P.S.. Static 모듈로 운영되는 APM 서버는...
>php 업그레이드시..
반드시 APM 전체를 리빌드 해야 하나요?
>
MySQL 은 제외하고 Apache 를 다시 빌드해야 합니다. 만약
PHP 와 같은 모듈이 정적으로 붙어있으면 역시 Apache + PHP 를
다시 빌드해야 합니다.
>P.S2.. chattr +i 로 잠긴 파일들을 검색할 순 없을까요?
shell> lsattr *
이렇게 검색할 수 있습니다.
또는
shell> lsattr /{root,usr,lib,var,tmp,bin,sbin,home,boot,etc}/* | grep '\-i\-'
========================================
|