서버 사이드 (Server-Side)
PHP는 대표적인 서버 사이드 스크립트(Server-Side Script) 언어입니다.
서버 사이드란 프로그램 코드의 분석, 연산, 데이터베이스 조회, 비즈니스 로직 연동 등 웹 서비스의 핵심 제어가 사용자의 PC나 모바일 브라우저가 아닌 원격지의 서버 웹 호스팅 인프라 영역에서 전부 완료된 후 결과물만 응답하는 방식을 말합니다.
1. 서버 사이드 스크립트 요청 처리 흐름
사용자가 웹 브라우저의 주소창에 주소를 입력하거나 버튼을 클릭하는 순간부터 화면에 결과가 뿌려지기까지의 전체 하드웨어적 연동 흐름은 다음과 같습니다.
- HTTP 요청 (Request): 클라이언트 브라우저가 웹 서버에 특정 PHP 페이지(예:
index.php)를 요구합니다. - 실행 위임: 웹 서버(Nginx, Apache 등)는 해당 요청이 정적인 파일(이미지, HTML)이 아닌 PHP 동적 스크립트임을 감지하고, 이를 가동 프로그램인 WAS(PHP-FPM, PHP 엔진)로 전달해 해석을 위임합니다.
- 데이터 연동 (SQL Query): PHP 스크립트 내부 지시어에 따라 데이터베이스(MySQL, MariaDB 등)와 물리적 커넥션을 맺고 필요한 레코드 데이터를 질의합니다.
- 결과셋 반환: 데이터베이스가 처리 결과를 PHP 엔진 측으로 되돌려 줍니다.
- 동적 HTML 조립: PHP 엔진은 원본 PHP 코드 내의 제어 루프와 데이터베이스 데이터를 합성하여 브라우저가 읽을 수 있는 일반 HTML 문서 스트림을 조립하고 웹 서버에 최종 전달합니다.
- HTTP 응답 (Response): 웹 서버는 전달받은 일반 HTML/CSS/JS 스트림을 클라이언트 브라우저에 전송하며, 브라우저는 이를 렌더링해 사용자 화면에 출력합니다.
2. 서버 사이드 언어(PHP)의 핵심 특징 및 장점
-
비즈니스 로직 및 소스코드 보안: 자바스크립트 등 클라이언트 사이드 스크립트는 브라우저의 ‘소스 보기’나 개발자 도구를 통해 비즈니스 로직과 API 키가 100% 노출됩니다. 반면, PHP는 서버 내에서 모든 연산을 종결하고 출력된 순수 HTML만 돌려주기 때문에 데이터베이스 비밀번호나 내부 알고리즘 등 핵심 지적 재산이 유출되지 않는 강력한 보안 장벽을 형성합니다.
-
클라이언트 단말 리소스 점유 최소화: 화면 렌더링을 위한 원본 계산 작업이 고성능의 서버 CPU 및 메모리 리소스를 활용하여 처리되므로, 저성능 스마트폰이나 노후 기기를 사용하는 클라이언트 브라우저 환경에서도 끊김 없는 부드러운 서비스 제공이 가능합니다.
-
일관된 SEO(검색엔진 최적화): 사용자 단말에서 자바스크립트가 동작해 동적으로 화면을 늦게 그려주는 CSR(Client-Side Rendering) 방식과 달리, 서버 사이드 렌더링은 이미 모든 본문 텍스트가 완성된 온전한 HTML을 즉시 반환합니다. 덕분에 구글, 네이버 등 검색 포털의 크롤러 로봇이 사이트 본문 수집을 방해받지 않아 검색 엔진 노출에 극도로 유리합니다.