[Apache] localhost만치면 어떻게 It works가 나올까?

웹서버를 구동시키고 확인하기 위해 localhost를 치면 It works가 뜬다. 그 이유에 대해 알아보려고 한다.


Apache는 웹서버이고 정적파일을 처리해주는 서비스이다. 즉 html, 이미지 같은 파일을 요청했을때 처리해주는 것이다. 그렇다면 어떤 파일을 요청할건지 루트와 파일명까지 알려줘야 웹서버가 처리해줄것이다. 하지만 우리는 localhost라는 정보만 URL에 입력했을뿐인데 It works를 응답받는다.


그 이유는 설정파일에서 정해줬기 때문이다. Apache의 설정파일은 httpd.conf라는 파일이다.  모든 설정은 여기에서 이루어지고 다른 conf파일은 include해서 포함해서 처리한다. 밑에 mod_jk.conf도 마찬가지로 httpd.conf안에 포함시켜서 처리시킨다.



httpd.conf 파일안에 


DocumentRoot 라는 설정변수가 있는데 이 설정이 localhost만 쳐도 기본적으로 이 루트를 찾게 하는 설정이다. 

즉 밑에 있는 설정대로라면 localhost 만 치면 자동적으로 localhost/D:/iRT/RBM2/Apache2.2/htdocs 여기로 요청하게 되는 것이다.

그런데 모든 요청은 루트만으로 요청할수 없고 파일명까지 지정해줘야 한다. 파일명도 밑에서 설정한다.




index.html을 찾아보면 index.html을 자동으로 찾게 해주는 dir_module 을 통해서 우리가 서비스 받고 있었다는걸 알수 있다. 

DirectoryIndex변수의 지정으로 루트만 입력하면 자동으로 해당 파일명을 찾는다. 





댓글

Designed by JB FACTORY