'directory'에 해당되는 글 1건

  1. 2011.05.03 아파치 Directory 설정

아파치 Directory 설정

Linux 2011. 5. 3. 15:13

<Directory> 값을 설정하여 각 Directory마다 적당한 권한을 설정할 수 있습니다.

 

※ httpd.conf

yum으로 설치했을 경우, /etc/httpd/conf/httpd.conf 를 열면 됩니다.

 

Ex 1) 전체 Directory에 관한 설정입니다.

 

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

 

Ex 2) 특정 Directory에 관한 설정입니다.

<Directory "/var/www/html">

#
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
#    Options Indexes FollowSymLinks
        Options None
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
    AllowOverride None

#
# Controls who can get stuff from this server.
#
    Order allow,deny
    Allow from all

</Directory>

 

대략 이런 화면이 httpd.conf에 담겨있을 것입니다.

Options으로 해당 Directory에 옵션을 부여할 수 있습니다.

또한 AllowOverride로 .htaccess 등의 파일지시자를 불러들이거나, 옵션을 설정할 수 있습니다.

 

 

-----------------

※ Options의 옵션

 

* None : 어떠한 옵션도 이용할 수 없습니다.

* All : MultiViews를 제외한 모든 명령을 이용할 수 있습니다.

* Indexes : 해당 Directory에 index파일(index.html 등으로 설정된 파일)이 없는 경우, Directory를 Listing해줍니다.

* Includes : SSI(Server Side Include)를 허용합니다. (다른 파일을 include 할 수 있음.)

* IncludesNoExec : SSI를 허용하지만, #exec와 #include로 정의한 CGI 실행은 거부합니다.

* FollowSymLinks : 심볼릭 링크를 허용합니다.

* SymLinksifOwnerMatch : 심볼릭 링크를 허용하지만, 링크하고자 하는 대상이 사용자의 소유로 되어 있는 것만 링크가 가능합니다.

* ExecCGI : perl 같은 CGI(Common Gateway Interface) 스크립트를 실행을 허용합니다.

* MultiViews : 웹브라우져의 요청에 따라 적절한 페이지로 보여줍니다. 웹브라우져 종류나 문서 종류에 따른 가장 적합한 페이지를 보여주는 설정입니다.

 

 

※ AllowOverride 옵션

 

* None : AccessFileName에 지정된 파일을 엑세스하지 않습니다. (무시합니다.)

* All : 이전의 인증방식에 대하여 새로운 접근 방식을 우선 적용하도록 override를 허용합니다.

* AuthConfig : AccessFileName 지시자에 명시한 파일에 대하여 클라이언트 인증지시자의 사용을 허용합니다. htpasswd 유틸리티를 이용하여 AccessFileName에 명시한 파일로 제어하고자 할때 사용한다고 합니다.

* FileInfo : AccessFileName 지시자에 명시된 파일에서 addEncoding, addType 같은 문서 유형을 제어문을 허용합니다.

* Indexes : AccessFileName 지시자에 명시된 파일에서 AddIcon, FancyIndexing 같은 Directory Indexing을 제어하는 지시자를 허용합니다.

* Limit : AccessFileName 지시자에 명시된 파일에서 allow, deny 같은 접근제어 지시자를 허용합니다.

* Options : AccessFileName 지시자에 명시된 파일에서 options 같은 특정 Directory 옵션을 제어하는 지시자를 허용합니다.

 

 

.htaccess 파일은 간단하게 vi 에디터로 작성이 가능합니다.

 

※ .htaccess 옵션

 

* AuthType : 인증타입을 결정합니다. Basic과 Digest 방식이 있습니다.

* AuthName : 인증시 보여줄 메세지를 정합니다.

* AuthUserFile : 인증을 허용할 사용자의 id와 password가 저장되어 있는 위치를 정합니다.(.htpasswd) .htpasswd 파일은 보통 아파치의 /bin/htpasswd라는 유틸리티를 이용해서 생성됩니다.

* AuthGroupFile : 그룹으로 인증확인을 할 경우, 그룹인증파일명을 입력합니다.

* Limit : <Limit GET POST> 내용 </Limit> 같은 방식으로 사용할 수 있습니다. (예제는 GET과 POST 방식을 거부하는 태그입니다.)

* Limit 태그 안의 옵션

 - require valid-user : 패스워드로 인증된 사용자만이 접속할 수 있도록 합니다.

 - require group 그룹명 : 패스워드로 인증된 그룹만이 접속할 수 있도록 합니다.

 - order : 웹 서버에 접근 및 거부에 관한 명령행을 실행합니다. (deny, allow)

 - deny from <all, 아이피 등> : 옵션에 따라서 사용자 접속을 거부합니다.

 - allow from <all, 아이피 등> : 옵션에 따라서 사용자 접속을 허용합니다.

'Linux' 카테고리의 다른 글

iptable #2  (0) 2011.05.03
iptable #1  (0) 2011.05.03
mysql 패스워드 초기화 방법  (0) 2011.05.03
MYSQL 설치  (0) 2011.05.03
vi의 텍스트 찾기, 바꾸기 명령  (0) 2011.04.27
Posted by 으랏차
,