본문 바로가기

기본공부/웹서버&웹프로그래밍

(생활코딩) 웹서버와 http

Bitnami manager tool에서 go to application을 눌러 Bitnami 창이 새로 열리면

localhost라고 되어있는 주소창에 http://127.0.0.1/index.html 를 입력해보자.

 

차이는 없다. 지금 입력한 주소로 index.html이라는 어떤 파일을 화면에 출력하고 있다.

 

이 index.html 파일은 Bitnami폴더의 apache폴더의 htdocs(hypertext documents)폴더 안에 들어있다. 

 

해당 파일을 오른쪽클릭해서 에디터로 열어 <body>탭 아래에 web1을 입력하고 저장해보면,

bitnami창을 새로고침 했을 때 에디터에 입력한 web1이 나오는 것을 확인할 수 있다.

 

지금 상황은, 한 대의 텀퓨터에 Bitnami가 만든 htdocs라는 폴더 안에 index.html이라는 파일이 저장되어 있다.

 

그리고 컴퓨터에는 웹 브라우저와 웹 서버가 모두 한 대의 컴퓨터 안에 설치된 상태이다.

 

그러면 이 웹 브라우저로 웹 서버를 통해서 htdocs 밑에 있는 index.html 파일을 가져오고 싶으면

http://127.0.0.1/index.html을 입력한다. 

 

127.0.0.1 부분은 Internet Protocol Address로 웹 브라우저가 설치되어 있는 컴퓨터를 가리키는 아주 특수한 약속되어 있는 주소이다. 전 세계에 있는 모든 컴퓨터가 웹 브라우저에 127.0.0.1이라고 치는 것은 웹 브라우저가 설치된 각자의 컴퓨터의 웹 서버를 가리킨다.

 

index.html 부분은 웹 브라우저가 자신의 컴퓨터에 설치되어 있는 웹 서버에 접속해서 "index.html 파일을 줘"라고 얘기하는 것이다. 그럼 웹 서버는 htdocs라는 디렉토리에서 파일을 찾도록 설정이 기본적으로 되어 있는 상태이다. 웹 서버는 설정이 되어 있는대로 htdocs라는 폴더에서 index.html이라는 파일을 읽어서 그 파일을 웹 브라우저에게 전송해주면 웹 브라우저는 그것을 해석해서 화면에 표시해주게 된다.

 

여기서 Bitnami홈페이지는 내가 만든 페이지가 아니기때문에 내가 만든 걸로 교체를 해보자.

Bitnami를 설치하면서 우리가 생성한 Apache의 htdocs라는 폴더에 지금까지 작업한 파일들을 덮어쓰면 된다.

 

htdocs 폴더 내의 파일들을 다 삭제한다.
그리고 내가 만든 웹페이지 파일들을 넣어놓는다.

그리고 창을 새로고침하면 내가 만든 웹페이지가 나온다.

 

자 그러면 주소를 입력해서 웹 페이지를 보는 것과 파일 열기를 통해 웹 페이지를 여는 것은 무슨 차이가 있을까?

보여지는 화면에는 차이가 없지만, 이 두가지는 질적으로 완전히 다르다. 경로를 보면 주소가 완전 다르다.

 

  • http://127.0.0.1/index.html >> 해당 주소는 웹 브라우저가 웹 서버에게 요청하는 것이다. 웹 서버가 index. html파일을 열어서 웹브라우저에게 전송을 해준다. (한대의 컴퓨터 안에서) http://는 웹 브라우저와 웹 서버가 서로 통신할 때 사용하는 통신 규약인 HyperText Transfer Protocol을 이용해서 데이터를 가져온다. (http~웹 페이지를 웹 브라우저와 웹 서버가 서로 주고 받기 위한 약속)
  • file:///C:/Bitnami/wampstack-8.0.3-1/apache2/htdocs/index.html >> 'file'로 시작하는 주소를 입력하면, 이 컴퓨터 안에는 웹서버가 이 과정에 개입하지 않는다. 웹 브라우저가 직접 index.html의 파일을 읽어서 화면에 열어준다. file:///은 파일에 있는 것을 직접 여는 것이다.

이 두 개의 방법은 결과적으로는 사용자에게 전혀 차이가 없지만 이것은 우리가 한 대 컴퓨터 안에 웹 브라우저와 웹 서버가 동시에 설치되어 있기 때문이다. 하지만, 서로 다른 컴퓨터에 있는 웹 브라우저와 웹 서버가 통신을 하기 위해서는 반드시 http를 사용해야 한다.