Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

SW Level Up

PHP 작동 과정 본문

PHP

PHP 작동 과정

SW레벨업 2020. 10. 4. 19:14

사용자(클라이언트)는 웹 요청을 보낼 수 있는 프로그램, 웹 브라우저가 필요하다.

서버는 웹 서버, PHP 엔진, 데이터베이스 등의 프로그램이 필요하다.

사용자는 웹 브라우저의 주소표시줄에 웹 페이지의 주소인 blog.swlevelup.com/index.php를 적는다.

웹 브라우저는 DNS 서버에 blog.swlevelup.com이라는 도메인 이름을 어떤 IP로 바꿔야 하는지 물어본다.

DNS 서버에서 받은 IP를 가진 컴퓨터에 /index.php 페이지를 요청한다.

/index.php는 웹 서비스의 루트 디렉터리를 뜻하며, 이는 서버 컴퓨터의 루트 디렉터리와는 다르다.

웹 서비스의 루트 디렉터리는 웹 서버 소프트웨어인 아파치(Apache)에서 설정한다.

이 요청은 인터넷을 통해 전달되며, 요청 주소에 포트 번호가 없으니 웹 서비스 기본 포트인 80 포트로 전달된다.

요청을 받은 웹 서버 컴퓨터의 80 포트는 아파치 웹 서버 소프트웨어가 사용하고 있으니 아파치가 이 요청을 받는다.

아파치는 요청이 php 파일임을 확인하고 PHP 엔진에 /index.php의 연산을 요청한다.

만약 요청된 파일이 정적 웹 페이지인 html 파일이었다면 아파치가 바로 해당 파일을 찾아 사용자에게 응답으로 전송했을 것이다.

PHP 엔진은 /index.php 파일을 찾아 php 코드를 실행 후 그 결과를 웹 페이지(html)로 만드는 작업을 한다.

php 코드에 데이터베이스 작업이 있다면 MariaDB 같은 데이터베이스 프로그램이 동작하고 결과를 줄 것이다.

아파치는 PHP 엔진이 준 웹 페이지를 인터넷을 통해 사용자에게 전달한다.

사용자 컴퓨터의 IP와 포트 번호는 요청에 적혀있으니 보낼 수 있다.

참고로 사용자 쪽의 포트 번호는 80이 아니라 요청마다 다르기 때문에 여러 페이지를 동시에 볼 수 있는 것이다.

사용자의 웹 브라우저는 응답을 해석해 화면에 보여준다.

Comments