apachectl 에서 옵션(-k)가 없을 경우 디폴트 옵션으로 적용한다.
그래서 apachectl start 를 실행하면 내부적으로는 httpd -k start 로 동작한다.
그런데 아래와 같은 오류가 발생한다.
Permission denied: make_sock: could not bind to address [::]:80apache 데몬을 root 권한이 아닌 사용자 계정으로 로딩하기 위해서 소유권을 바꿨더니 발생한다.
Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
기본적으로 예약된 포트는 root 권한 이외의 계정으로는 오픈할 수 없기 때문이다.
이럴 때는,
chown root.root httpd
chmod +s httpd
를 해주면, httpd의 권한이 -rwsr-sr-x 로 변경된다.
그리고 freeism(사용자 계정)으로 소유권이 지정된 ( 즉, chown freeism.freeism apachectl )
apachectl 을 통해서 httpd 데몬을 로딩하면,
사용자 계정으로 마치 root 처럼 데몬을 띄워준다.
갈무리)위 내용은 http://www.freeism.co.kr/tc/612 (새 창으로 열기) 내멋데로 사는 세상님 글을 가져왔습니다










