이제 기본적인 Apache 실행환경을 설정해보자.
/usr/local/server/apache/conf/httpd.conf 파일을 편집한다.
User 와 Group 지시어에 설정되어 있는 기본값인 daemon 을 nobody 로 변경한다. root 권한으로 실행된 아파치의 하위 프로세스를 이곳에서 지정한 사용자로 실행한다는 의미이다.
ServerName 항목의 주석을 해제하고, 도메인 또는 서버의 IP주소를 적어준다. 만약 이 항목을 설정하지 않으면 127.0.0.1 으로만 접속이 된다.
User nobody
Group nobody
ServerName 192.168.75.129
이제 Apache 를 실행하여 접속해 보자.
# /etc/init.d/httpd start
출처 - http://batsu05.tistory.com/53
drwx---r-x 3 userid usergroup 4096 3월 10 14:59 testdir
위와 같이 testdir 이란 디렉토리가 있고 userid 란 계정으로 해당 디렉토리를 만들었습니다.
그런데 웹을 통해 php로 이 디렉토리의 권한 수정하려고 힙니다
웹을 통한 php는 아파치의 모듈로서 동작을 하기에 아파치의 실행권한을 가지고 움직입니다
아파치의 실행권한은 httpd.conf 화일에서
User nobody
Group nobody
일반적으로 이런식으로 지정되어 있습니다. 즉 php 가 nobody 란 유저에 nobody 란 그룹으로
실행된다는 것이죠
그럼 testdir 이란 디렉토리의 권한과 nobody 를 비교하면 testdir 은 userid 계정을 가진사람이
읽고 쓰고 실행할수 있으며 usergroup 에 속하는 그룹들은 아무런 권한도 없으며
그외의 계정에 관해서는 읽고 실행만 된다는 것입니다
아파치 실행계정인 nobody 는 testdir 의 입장에서 봤을때 그외의 계정에 속하게되고
읽고 실행만 된다는 것이죠. 해당 디렉토리명을 바꾸고 권한을 변경하려면
drwx---rwx 3 userid usergroup 4096 3월 10 14:59 testdir
과 같이 되어 있어야만 됩니다.
출처 -
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_other&wr_id=105695
'Web > WebServer' 카테고리의 다른 글
apache - 아파치 웹 서버 모듈 추가 (0) | 2013.01.14 |
---|---|
WebDAV ( Web-based Distributed Authoring and Versioning ) (0) | 2012.03.11 |
Apache httpd.conf 지시자 설명 (0) | 2012.02.11 |
Apache HTTP Server Core 및 지시자 (0) | 2012.02.11 |
winnt_accept: Asynchronous AcceptEx failed. (0) | 2012.02.11 |