본문 바로가기

Programming/Linux

아파치 웹서버(httpd)의 시작 페이지 설정

반응형

리눅스 환경에서 Apache 웹서버(httpd)의 root 디렉토리를 지정하려면(서버 구동 시 참조하는 디렉토리) /etc/httpd/conf/ 경로의 httpd.conf  파일에서 DocumentRoot 부분을 수정하면 된다. 

 

root 경로에서 '어떤' 파일을 참조해야 하는지 지정하려면 어떻게 할까?

 

마찬가지로 httpd.conf 파일에서 DirectoryIndex 부분을 수정하면 된다. DirectoryIndex는 클라이언트가 디렉토리를 요청할 때 어떤 리소스를 불러올지 참조하는 하나 또는 그 이상의 파일 이름 리스트이다. 일반적으로 파일 이름으로 명시한다.

 

기본 설정은 아래와 같이 index.html 파일을 참조하도록 설정되어 있다.

 

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

 

만약 사용하고 싶지 않다면 아래와 같이 disabled을 입력하면 된다.

 

<IfModule dir_module>
    DirectoryIndex disabled
</IfModule>

 

여러 파일을 참조하도록 설정할 수 있다. 아래와 같이 설정하면 index.html 파일이 존재하지 않을 시 index.php 파일을 참조하는 방식으로 동작한다. 좌->우, 위->아래 방향으로 참조하므로 필요에 따라 로드 시키고 싶은 파일 이름의 순서를 교체하면 된다.

 

예시 1, 예시 2 모두 적용 방식은 다르지만 동일하게 동작한다.

 

// 예시 1
<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

// 예시 2
<IfModule dir_module>
    DirectoryIndex index.html
    DirectoryIndex index.php
</IfModule>

 

또는 아래와 같이 구성하는 방법도 있다. 이렇게 하면 index.html을 참조하지 않고 index.php만 참조한다. 만약 index.html을 사용하지 않겠다고 명확하게 명시하고 싶다면 아래와 같이 구현할 수 있겠다.

 

<IfModule dir_module>
    DirectoryIndex index.html
    DirectoryIndex diabled
    DirectoryIndex index.php
</IfModule>

 

참조

https://httpd.apache.org/docs/2.4/en/mod/mod_dir.html

 

mod_dir - Apache HTTP Server Version 2.4

Apache Module mod_dir Summary The index of a directory can come from one of two sources: A file written by the user, typically called index.html. The DirectoryIndex directive sets the name of this file. This is controlled by mod_dir. Otherwise, a listing g

httpd.apache.org

반응형